Dissertações/Teses

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

2024
Dissertações
1
  • ALISON HEDIGLIRANES DA SILVA
  • Geotrack: An End-to-end framework to support Moving Objects

  • Orientador : NELIO ALESSANDRO AZEVEDO CACHO
  • MEMBROS DA BANCA :
  • FREDERICO ARAUJO DA SILVA LOPES
  • GIBEON SOARES DE AQUINO JUNIOR
  • LEOPOLDO MOTTA TEIXEIRA
  • NELIO ALESSANDRO AZEVEDO CACHO
  • Data: 02/04/2024

  • Mostrar Resumo
  •  A proliferação do uso intensivo de dispositivos de geolocalização tem acarretado um desgaste considerável na vida útil das baterias desses aparelhos, resultando em dificuldades para o uso de determinadas aplicações. Diante dessa problemática, o presente estudo apresenta um framework abrangente desenvolvido com a finalidade de coletar, processar e visualizar dados de geolocalização em dispositivos móveis, com destaque para smartphones. O sistema em questão é constituído por uma biblioteca Android que possibilita o envio dos dados de geolocalização, ao mesmo tempo em que oferece opções de configuração para aprimorar a precisão e reduzir o consumo da bateria. Adicionalmente, foi desenvolvido um framework Java capaz de receber e processar esses dados, realizando integrações com extensões do PostGIS para garantir a obtenção de posições extremamente precisas. Por fim, uma biblioteca JavaScript foi implementada para receber e visualizar as geolocalizações armazenadas, proporcionando uma compreensão clara e intuitiva dos padrões geográficos subjacentes.


  • Mostrar Abstract
  • The proliferation of intensive use of geolocation devices has significantly contributed to the considerable wear and tear on the battery life of these devices, resulting in difficulties in using certain applications. Faced with this issue, the present study introduces a comprehensive framework developed for the purpose of collecting, processing, and visualizing geolocation data on mobile devices, with a particular focus on smartphones. The system in question is composed of an Android library that enables the transmission of geolocation data while offering configuration options to enhance accuracy and reduce battery consumption. Additionally, a Java framework has been developed to receive and process this data, integrating with PostGIS extensions to ensure the acquisition of highly precise positions. Finally, a JavaScript library has been implemented to receive and display stored geolocations, providing a clear and intuitive understanding of underlying geographic patterns.

2
  • CHARLES HALLAN FERNANDES DOS SANTOS
  • Recuperação Inteligente de Desastres em Sistemas de Operação, Gerenciamento e Controle de Infraestruturas
    5G

  • Orientador : AUGUSTO JOSE VENANCIO NETO
  • MEMBROS DA BANCA :
  • AUGUSTO JOSE VENANCIO NETO
  • ROGER KREUTZ IMMICH
  • RAMON DOS REIS FONTES
  • FELIPE SAMPAIO DANTAS DA SILVA
  • Data: 30/04/2024

  • Mostrar Resumo
  • O aumento da complexidade das redes móveis de quinta geração (5G), ocasionado pelo elevado número de dispositivos móveis, aliado ao aumento das exigências quanto aos novos requisitos de aplicação, exige o emprego de sistemas de gestão capazes de prover redes 5G sempre melhor conectadas e melhor servido. Pensando nisso, as operadoras de rede empregam centros de Operação, Gerenciamento e Controle (OMC, do inglês Operation,
    Management and Control), um ecossistema que envolve diferentes tecnologias e ferramentas que interoperam para fornecer funções de operação e gerenciamento de última geração projetadas para manter a rede viva com níveis garantidos acordados em SLA (Service Level Acordo) ao longo do tempo. Um OMC é construído estrategicamente em uma instalação de ambiente centralizado e tem a função de responder à ocorrência de um
    "desastre", ou seja, eventos que potencialmente podem levar a um determinado nível de indisponibilidade do serviço de rede. Como forma de garantir algum nível de tolerância a falhas, instâncias OMC redundantes devem ser adotadas, onde um OMC backup deve assumir o controle quando uma instância principal do OMC falha. Um Sistema de Recuperação de Desastres (DRS, do inglês Disaster Recovery System) tem o objetivo de atribuir qual instância OMC assume o controle principal dentro de um ecossistema 5G. Para isso, o DRS monitora constantemente o ecossistema 5G em busca da detecção de eventos de desastres para que designe um OMC de backup para assumir o controle principal.


    Com base no fato de que o DRS opera principalmente de maneira reativa, o que significa que a alternância entre OMCs é feita após a detecção de uma ocorrência de desastre, esta pesquisa de mestrado se dedica à exploração de técnicas de Machine Learning para controlar com eficiência a atribuição de OMCs multi-redundantes no controle de redes 5G. 
    Para tanto, é introduzido o iDRS (Intelligent Disaster Recovery System), que se baseia em análises preditivas para atuar proativamente na atribuição do controle dos OMCs, na hipótese de provisionar um sistema eficiente e ágil para manter as redes 5G ao longo de sua vida útil.


  • Mostrar Abstract
  • The increase in the complexity of fifth-generation (5G) mobile networks, caused by the high number of mobile devices, along with the increased demands with respect to new application requirements, requires the employment of management systems capable to provision 5G networks always best connected and best served. With this in mind, network operators employ Operation, Management, and Control (OMC) centers, an ecosystem
    entailing different technologies and tools that interoperate to provide ultimate operations and management functions designed to keep the network alive with guaranteed levels agreed in SLA (Service Level Agreement) over time. An OMC is strategically constructed in a centralized environment facility and has the role of being able to respond to the occurrence of a "disaster", meaning events that potentially yield a certain level of network
    service unavailability. As a way to guarantee some level of fault tolerance, redundant OMC instances must be adopted, where a backup OMC must assume control when a principal OMC instance fails. A Disaster Recovery System (DRS) has the goal of assigning which OMC instance takes the principal control inside a 5G ecosystem. To this, the DRS constantly monitors the 5G ecosystem in pursuit of detecting disaster events so that assigning a backup OMC to assume the principal control.

    Based on the fact that DRS mainly operates in a reactive manner, meaning that the switching between OMCs is done after detecting a disaster occurrence, this master’s research devotes to exploiting Machine Learning techniques to efficiently control the assigning of multi-redundant OMCs in the control of 5G networks. To this end, the iDRS (Intelligent Disaster Recovery System) is introduced, which is based on predictive analyzes to act proactively in the attribution of OMCs control, in the hypothesis of provisioning an efficient and agile system to maintain 5G networks throughout their lifetime. 

     
Teses
1
  • NICOLAS EDUARDO ZUMELZU CARCAMO
  • Fundamentos de uma Análise Matemática Fuzzy Baseada em Números Fuzzy e Ordens Admissíveis

  • Orientador : BENJAMIN RENE CALLEJAS BEDREGAL
  • MEMBROS DA BANCA :
  • ROBERTO ANTONIO DÍAZ MATAMALA
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • GRAÇALIZ PEREIRA DIMURO
  • JOSÉ EDMUNDO MANSILLA VILLARROEL
  • REGIVAN HUGO NUNES SANTIAGO
  • RUI EDUARDO BRASILEIRO PAIVA
  • Data: 26/02/2024

  • Mostrar Resumo
  •  

    A noção de ordens admissíveis em lógica fuzzy intervalar surge em 2010 com o intuito de fornecer um critério mínimo que uma ordem total no conjunto dos subintervalos fechados do intervalo unitário [0,1] deveria atender para ser usada em aplicações dessa teoria fuzzy. Posteriormente, essa mesma ideia foi adaptada para outras extensões da lógica fuzzy. Nesta tese, levamos a ideia de ordens admissíveis para fora do contexto de extensões da lógica fuzzy. De fato, aqui introduzimos a noção de ordem admissível para números fuzzy equipados com uma ordem parcial, ou seja, uma ordem total que refina essa ordem parcial. Damos atenção especial à ordem parcial proposta por Ramík e Rímánek em 1985. Além disso, apresentamos um método para construir ordens admissíveis sobre números fuzzy em termos de ordens admissíveis definidas para intervalos, considerando uma sequência densa superiormente, e provamos que esta ordem é admissível para a ordem de Ramík e Rímánek. A partir destas ordens admissíveis estudamos conceitos fundamentais da Análise Matemática no contexto dos números fuzzy. O objetivo, é dar os primeiros passos para o desenvolvimento de uma análises matemática sobre números fuzzy sobre certas ordens admissíveis de forma robusta e bem fundada, preservando ao máximo propriedades da análises matemática tradicional. Dessa forma, introduzimos a noção de integral de Riemann sobre números fuzzy, chamada de integral fuzzy de Riemann, considerando ordens admissíveis, e estudamos propriedades e caracterizações dessa integral. Formalizamos os conceitos de espaço vetorial sem inversos e espaço vetorial ordenado sem inversos, um tipo de hiperestruturas, que generaliza a noção convencional de espaços vetoriais ordenados. Cabe salientar que o espaço dos números fuzzy triangulares (NFT) e dos NFT dotados de algumas ordens são exemplos de ambas hiperestruturas. Além disso, introduzimos a noção de funções crescentes de tipo média sobre números fuzzy equipados com ordens admissíveis em geral, caracterizando-as como idempotentes, e em particular, no espaço vetorial ordenado sem inversos. Finalmente, introduzimos o conceito de grafos ponderados vector-fuzzy e utilizamos ferramentas construídas a partir de funções tipo média no espaço vetorial ordenado sem inversos, para resolver tipos de problemas de caminho mais curtos em grafos ponderados.



  • Mostrar Abstract
  • The notion of admissible orders in interval fuzzy logic emerged in 2010 with the aim of providing a minimum criterion that a total order in the set of closed subintervals of the unitary interval [0,1] should meet to be used in applications of this fuzzy theory. Later, this same idea was adapted to other extensions of fuzzy logic. In this thesis, we take the idea of admissible orders outside the context of extensions of fuzzy logic. In fact, here we introduce the notion of admissible order for fuzzy numbers equipped with a partial order, that is, a total order that refines this partial order. We pay special attention to the partial order proposed by Ramík and Rímánek in 1985. Furthermore, we present a method to construct admissible orders over fuzzy numbers from admissible orders defined for intervals, considering a superiorly dense sequence, and we prove that this order is admissible for the order of Ramík and Rímánek. From these admissible orders we study fundamental concepts of Mathematical Analysis in the context of fuzzy numbers. The objective is to take the first steps towards the development of a mathematical analysis of fuzzy numbers in certain admissible orders in a robust and well-founded way, preserving as much as possible properties of traditional mathematical analysis. In this way, we introduce the notion of Riemann integral over fuzzy numbers, called fuzzy Riemann integral, considering admissible orders, and we study properties and characterizations of this integral. We formalize the concepts of vector space without inverses and ordered vector space without inverses, a type of hyperstructures, which generalizes the conventional notion of ordered vector spaces. It is worth noting that the space of triangular fuzzy numbers (TFN) and TFNs with some orders are examples of both hyperstructures. Furthermore, we introduce the notion of increasing functions of average type over fuzzy numbers equipped with admissible orders in general, characterizing them as idempotent, and in particular, in the ordered vector space without inverses. Finally, we introduce the concept of weighted vector-fuzzy graphs and use tools built from average-like functions in the ordered vector space without inverses, to solve types of shortest path problems in weighted graphs.

2
  • HELOISA FRAZÃO DA SILVA SANTIAGO
  • Classes de Implicações Geradas por Somas Ordinais

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • MEMBROS DA BANCA :
  • ANNE MAGALY DE PAULA CANUTO
  • ANTONIA JOCIVANIA PINHEIRO
  • GRAÇALIZ PEREIRA DIMURO
  • HELIDA SALLES SANTOS
  • REGIVAN HUGO NUNES SANTIAGO
  • Data: 12/03/2024

  • Mostrar Resumo
  • Esta tese pretende contribuir para a teoria das implicações fuzzy dadas por somas ordinais,
    introduzindo duas novas classes: as implicações dadas por somas ordinais principais e as
    implicações dadas por somas ordinais secundárias. São apresentados alguns métodos de
    construção empregados na geração de exemplos dessas duas novas classes. Alguns métodos
    de construção de funções de agregação por meio de somas ordinais são apresentados e um
    destes métodos é utilizado para construir implicações dadas por somas ordinais. Também
    são apresentados métodos de construção de somas ordinais de implicações que podem não
    ser nem principais nem secundárias. Além disso, a tese amplia sua contribuição fornecendo
    exemplos de implicações dadas por somas ordinais principais e secundárias dentro de
    algumas das principais classes de implicações fuzzy, incluindo (S,N)-implicações, (T,N)-
    implicações, QL-implicações e D-implicações.


  • Mostrar Abstract
  • Copulas are functions that play an important role in probability theory. Since interval
    probability takes into account the imprecision in the probability of some events, it is
    likely that interval copulas have a relevant contribution to interval probability theory. This
    article aims to introduce the definition and analysis of interval-valued copulas and their
    properties. We pro- vide a condition for an interval-valued copula to be 1-Lipschitz and
    from the interval-valued automorphisms we obtain the conjugate interval-valued copula
    and some important inherited properties. We have seen that the Archimedean intervalvalued
    copula, in most cases, has its behavior defined by its generative function. We also
    show a condition for this generating function to generate an interval-valued copula and a
    version of the Sklar’s theorem for representable interval-valued copulas.

3
  • ALAN DE OLIVEIRA SANTANA
  • Identificação da Causa de Erros na Resolução de Problemas Matemáticos

  • Orientador : EDUARDO HENRIQUE DA SILVA ARANHA
  • MEMBROS DA BANCA :
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • KLEBER TAVARES FERNANDES
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • ROBERTA DE SOUZA COELHO
  • THIAGO REIS DA SILVA
  • Data: 25/03/2024

  • Mostrar Resumo
  • A aprendizagem de matemática pode ser um grande desafio para estudantes ao redor do mundo. As dificuldades encontradas por estes estudantes variam, como falta de atenção, problemas metodológicos, não domínio de conteúdos prévios, dificuldades na leitura, problemas pessoais, entre outros. Mesmo sendo complexos, estas dificuldades geralmente se manifestam em erros pontuais na resolução de questões matemáticas, permitindo a especialistas identificá-los e associá-los a prováveis causas. Neste contexto, se destacam os erros comuns, como trocas de operadores, erros de arredondamento, resultados equivocados de operações, entre outros. Estes erros podem ser mapeados e generalizados, uma vez que são parte integrante das soluções realizadas pelos alunos. Assim, sistemas inteligentes, como os STI (Sistemas Tutores Inteligentes), podem ser desenvolvidos para atuar sobre essas dificuldades, identificando os erros e gerando feedbacks para professores e aos próprios estudantes. Com base no exposto, este trabalho tem por objetivo propor um modelo de generalização de erros comuns para ser aplicado a identificação passo a passo da origem dos erros e para tanto, o modelo utilizará o conceito de mutantes, a fim de gerar distratores que serviram como parâmetro para identificar a origem dos problemas. A fim de levantar os dados pertinentes para este estudo, alguns estudos procuraram levantar os dados relevantes para a modelagem dos mutantes, começando com a avaliação do estado da arte dos STI aplicados a matemática no cenário brasileiro e internacional e em seguida estudos exploratórios sobre os erros comuns que podem ser mapeados para a geração do modelo de mutações. A seguir, é realizada a apresentação da modelagem dos mutantes e também a descrição da arquitetura do STI para a matemática, bem como de estudos que procuram validá-la. As principais hipóteses de pesquisa apontam que o uso da modelagem de mutantes aplicadas a matemática através de um STI permite uma maior dinamicidade na criação de cenários de erros, além de poderem ser associados a problemas que vão além da análise da prova. Outra hipótese é que os feedbacks baseados em distratores gerados pelo modelo de mutações associado a analise passo a passo das respostas dos alunos, permitem um maior detalhe do local do erro, facilitando a geração de feedbacks a partir do STI.


  • Mostrar Abstract
  • Learning mathematics can be a significant challenge for students around the world. The difficulties encountered by these students vary, such as lack of attention, methodological problems, lack of mastery of prerequisite knowledge, reading difficulties, personal issues, among others. Despite being complex, these difficulties often manifest themselves in specific errors in solving mathematical problems, allowing experts to identify them and associate them with probable causes. In this context, common errors stand out, such as operator substitutions, rounding errors, incorrect results of operations, among others. These errors can be mapped and generalized since they are integral parts of students' solutions. Thus, intelligent systems, such as Intelligent Tutoring Systems (ITS), can be developed to address these difficulties by identifying errors and providing feedback to teachers and students themselves. Based on the above, this work aims to propose a model for generalizing common errors to be applied in the step-by-step identification of error origins. To achieve this, the model will utilize the concept of mutants to generate distractors that will serve as parameters for identifying the source of the problems. To gather relevant data for this study, some research efforts have focused on assessing the state of the art of ITS applied to mathematics in the Brazilian and international scenarios. Furthermore, exploratory studies have been conducted to identify common errors that can be mapped for the generation of the mutation model. Next, the presentation of the mutant modeling is carried out, along with the description of the architecture of the ITS for mathematics and studies that seek to validate it. The main research hypotheses indicate that the use of mutant modeling applied to mathematics through an ITS allows for greater dynamism in creating error scenarios, and they can be associated with problems that go beyond the analysis of the test. Another hypothesis is that feedback based on distractors generated by the mutation model, combined with step-by-step analysis of students' responses, allows for more detailed identification of the error location, facilitating the generation of feedback from the ITS.

4
  • JULIA MADALENA MIRANDA CAMPOS
  • Problema de Roteamento e Escalonamento de Profissionais de Saúde no Atendimento Domiciliar com Priorização no Atendimento

  • Orientador : ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MEMBROS DA BANCA :
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • GUSTAVO DE ARAUJO SABRY
  • MATHEUS DA SILVA MENEZES
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • THATIANA CUNHA NAVARRO DE SOUZA
  • Data: 29/04/2024

  • Mostrar Resumo
  • O serviço de atendimento 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. Com o surgimento da Covid-19, o atendimento domiciliar tornou-se ainda mais presente, substituindo ou complementando a internação hospitalar, oferecendo uma modalidade de atendimento mais humanizada às pessoas com quadro clínico estável que necessitam de cuidados médicos. O agendamento e roteamento dos profissionais de saúde que realizam tais atendimentos possui alguns desafios, dentre eles: atender pacientes dentro do período do horário de trabalho dos profissionais de saúde, ter uma equipe de profissionais de tamanho adequado, garantir a satisfação dos pacientes e profissionais, economizar gastos com a frota de veículos que transportam os profissionais, etc. Este trabalho apresenta uma nova variante do problema onde os pacientes são divididos em dois grupos em relação ao atendimento: prioritários e opcionais. Os pacientes prioritários devem ser atendidos obrigatoriamente no horizonte de planejamento definido. É desejável que, tanto quanto possível, os clientes opcionais também sejam atendidos. O objetivo é maximizar a receita recebida pelos atendimentos descontados os custos de transporte dos profissionais. Este trabalho apresenta um modelo de Programação Linear Inteira para o problema. O modelo é implementado e testado em um conjunto de instâncias também propostas neste trabalho. Na variante abordada aqui, cada profissional é transportado por um veículo. Este trabalho também apresenta uma revisão abrangente da literatura sobre o Problema de Roteamento e Escalonamento de Profissionais de Saúde, na qual foram implementados e comparados diversos modelos matemáticos encontrados na literatura, com o objetivo de avaliar sua eficiência e aplicabilidade no contexto do problema estudado.


  • Mostrar Abstract
  • The home care service is a type of health care that comprises a set of prevention, rehabilitation, and treatment actions for illnesses provided at home. With the emergence of COVID-19, home care became even more present, replacing or complementing hospital admission, offering a more humanized type of care for people with a stable clinical condition who require medical care. Scheduling and routing health professionals who provide such services has some challenges, including serving patients within the health professional's working hours, having an appropriately sized team of professionals, ensuring patient and professional satisfaction, saving costs on the fleet of vehicles that transport professionals, etc. This work presents a new variant of the problem, dividing patients into priority and optional. Priority patients must be treated within the defined planning horizon. It is desirable that, as far as possible, optional customers are also served. The objective is to maximize the revenue received from services minus the transport costs of professionals. This work presents an Integer Linear Programming model for the problem. The model is implemented and tested on a set of instances also proposed in this work. In the variant discussed here, each professional is transported by a vehicle. This work also presents a comprehensive review of the literature on the Health Professional Routing and Scheduling Problem, in which several mathematical models found in the literature were implemented and compared to evaluate their efficiency and applicability in the context of the problem studied.

5
  • RAMIRO DE VASCONCELOS DOS SANTOS JÚNIOR
  • Using Machine Learning to Classify Criminal Macrocauses in Smart City Contexts

  • Orientador : NELIO ALESSANDRO AZEVEDO CACHO
  • MEMBROS DA BANCA :
  • ARAKEN DE MEDEIROS SANTOS
  • BRUNO MOTTA DE CARVALHO
  • DANIEL SABINO AMORIM DE ARAUJO
  • NELIO ALESSANDRO AZEVEDO CACHO
  • THAIS GAUDENCIO DO REGO
  • Data: 02/05/2024

  • Mostrar Resumo
  • Our research presents a new approach to classifying macrocauses of crime, specifically
    focusing on predicting and classifying the characteristics of ILVCs. Using a dataset
    from Natal, Brazil, we experimented with five machine learning algorithms, namely
    Decision Trees, Logistic Regression, Random Forest, SVC, and XGBoost. Our methodology
    combines feature engineering, FAMD for dimensionality reduction, and SMOTE-NC for
    data balancing. We achieved an average accuracy of 0.962, with a standard deviation of
    0.016, an F1-Score of 0.961, with a standard deviation of 0.016, and an AUC ROC curve of
    0.995, with a standard deviation of 0.004, using XGBoost. We validated our model using
    the abovementioned metrics, corroborating their significance using the ANOVA statistical
    method. Our work aligns with smart city initiatives, aiming to increase public safety and
    the quality of urban life. The integration of predictive analysis technologies in a smart
    city context provides an agile solution for analyzing macrocauses of crime, potentially
    influencing the decision-making of crime analysts and the development of effective public
    security policies. Our study contributes significantly to the field of machine learning applied
    to crime analysis, demonstrating the potential of these techniques in promoting safer urban
    environments. We also used the Design Science methodology, which includes a consistent
    literature review, design iterations based on feedback from crime analysts, and a case
    study, effectively validating our model. Applying the classification model in a smart city
    context can optimize resource allocation and improve citizens’ quality of life through a
    robust solution based on theory and data, offering valuable information for public safety
    professionals.


  • Mostrar Abstract
  • Our research presents a new approach to classifying macrocauses of crime, specifically
    focusing on predicting and classifying the characteristics of ILVCs. Using a dataset
    from Natal, Brazil, we experimented with five machine learning algorithms, namely
    Decision Trees, Logistic Regression, Random Forest, SVC, and XGBoost. Our methodology
    combines feature engineering, FAMD for dimensionality reduction, and SMOTE-NC for
    data balancing. We achieved an average accuracy of 0.962, with a standard deviation of
    0.016, an F1-Score of 0.961, with a standard deviation of 0.016, and an AUC ROC curve of
    0.995, with a standard deviation of 0.004, using XGBoost. We validated our model using
    the abovementioned metrics, corroborating their significance using the ANOVA statistical
    method. Our work aligns with smart city initiatives, aiming to increase public safety and
    the quality of urban life. The integration of predictive analysis technologies in a smart
    city context provides an agile solution for analyzing macrocauses of crime, potentially
    influencing the decision-making of crime analysts and the development of effective public
    security policies. Our study contributes significantly to the field of machine learning applied
    to crime analysis, demonstrating the potential of these techniques in promoting safer urban
    environments. We also used the Design Science methodology, which includes a consistent
    literature review, design iterations based on feedback from crime analysts, and a case
    study, effectively validating our model. Applying the classification model in a smart city
    context can optimize resource allocation and improve citizens’ quality of life through a
    robust solution based on theory and data, offering valuable information for public safety
    professionals.

2023
Dissertações
1
  • KEVIN BARROS COSTA
  • Plano de Monitoramento Auto-Organizado na Granularidade de Cloud-Network Slices

  • Orientador : AUGUSTO JOSE VENANCIO NETO
  • MEMBROS DA BANCA :
  • FABIO LUCIANO VERDI
  • AUGUSTO JOSE VENANCIO NETO
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • Data: 27/01/2023

  • Mostrar Resumo
  • Esta pesquisa de mestrado tem como objetivo central propor um novo plano de monitoramento para ambientes NECOS, denomina DIMA (do inglês, Distributed Infrastructure & Monitoring Abstraction). O DIMA tem o fim de aprovisionar monitoramento enquanto serviço na granularidade de partes que compõe Cloud-Network Slices, pautada na motivação evidenciada pela análise de trabalhos relacionados. Atualmente, o NECOS conta com o IMA (do inglês, Infrastructure & Monitoring Abstraction), que oferece uma solução centralizada em nuvem de núcleo. O DIMA pretende avançar a solução IMA por meio de uma solução capaz de aprovisionar monitoramento enquanto serviço para o ecossistema NECOS, com total automação de orquestração do serviço de monitoramento, suporte a diferentes modelos de monitoramento (centralizado, distribuído e híbrido) e compatível com o contínuo edge-to-cloud.


  • Mostrar Abstract
  • The main goal of this master's research is to propose a new monitoring plan for the NECOS ecosystem, denoted as DIMA (Distributed Infrastructure & Monitoring Abstraction). The DIMA proposal aims to afford monitoring as a service inside NECOS domains at Cloud-Network Slice part granularity, based on the motivation evidenced by the analysis of related works. Currently, NECOS relies on the IMA (Infrastructure & Monitoring Abstraction) solution, which offers monitoring as a service from a centralized approach running at the core cloud premise. DIMA intends to advance the IMA solution by providing monitoring as a service for the NECOS ecosystem with the following improvements: full automation of monitoring service orchestration, support of different monitoring models (centralized, distributed, and hybrid), and harnessing the continuous edge-to-cloud.

2
  • RODRIGO LAFAYETTE DA SILVA
  • On the Use of Machine Learning to Identify Null Pointer Exceptions in Static Java Code Analysis

  • Orientador : EVERTON RANIELLY DE SOUSA CAVALCANTE
  • MEMBROS DA BANCA :
  • EVERTON RANIELLY DE SOUSA CAVALCANTE
  • MARJORY CRISTIANY DA COSTA ABREU
  • DANIEL SABINO AMORIM DE ARAUJO
  • RODRIGO BONIFACIO DE ALMEIDA
  • Data: 30/01/2023

  • Mostrar Resumo
  • Mainstream object-oriented programming languages admit null values for references for the sake of flexibility. In the Java programming language, attempting to use an object reference with a null value throws a Null Pointer Exception (NPE), one of the most frequent causes of crashes in Java applications. Static analysis has been used to inspect the source or binary code to locate the origin of the exception by analyzing these artifacts without debugging-oriented program executions. Despite its effectiveness, static analysis relies on a fixed, static set of rules describing violation patterns, and it is known for a significant number of false positives. This study investigates how the use of Machine Learning (ML) techniques can improve the precision of detecting NPE-related faults through static analysis, a branch still unexplored in the literature and the software industry. The main goal is to propose, implement, and evaluate a classification-based approach to address the detection of NPE-related faults in Java code. The main contributions from this work are: (i) an analysis of how ML techniques can be used to detect those faults via static analysis; and (ii) an assessment of the performance of ML techniques in comparison to traditional static analysis tools.


  • Mostrar Abstract
  • Por uma questão de flexibilidade, as linguagens de programação orientadas a objetos convencionais admitem valores nulos para referências. Na linguagem de programação Java, o uso de uma referência de objeto com um valor nulo causa o lançamento de uma exceção do tipo Null Pointer Exception (NPE), uma das causas mais frequentes de falhas em aplicações escritas nessa linguagem. A análise estática tem sido utilizada para inspecionar artefatos de software como código fonte ou código binário visando localizar a origem de faltas sem que seja necessário executar o programa de forma orientada a depuração. Apesar de sua eficácia, a análise estática baseia-se em um conjunto fixo e estático de regras que descrevem padrões de ocorrência de faltas e é conhecida por um número significativo de falsos positivos. Este estudo investiga como o uso de técnicas de Aprendizado de Máquina (AM) pode melhorar a precisão da detecção de faltas relacionadas a NPE por meio de análise estática, uma linha ainda inexplorada na literatura e na indústria de software. O objetivo principal é propor, implementar e avaliar uma abordagem baseada em classificação que enderece o problema da detecção de faltas relacionadas a NPE em código Java. As contribuições deste trabalho são: (i) uma análise de como as técnicas de AM podem ser usadas para detectar essas faltas por meio de análise estática e (ii) uma avaliação do desempenho das técnicas de AM em comparação às ferramentas tradicionais de análise estática.

3
  • JOSÉ RENATO DE ARAÚJO SOUTO
  • Reconstrução Tridimensional de Feridas Utilizando Descritores de Pontos: Um Estudo Comparativo

  • Orientador : BRUNO MOTTA DE CARVALHO
  • MEMBROS DA BANCA :
  • ADRIANA TAKAHASHI
  • BRUNO MOTTA DE CARVALHO
  • LEONARDO CESAR TEONACIO BEZERRA
  • Data: 31/01/2023

  • Mostrar Resumo
  • Úlcera é o nome genérico dado a qualquer lesão no tecido cutâneo ou mucoso.
    Essas lesões culminam com a ruptura do epitélio, acarretando na exposição
    de tecidos mais profundos. O problema completo a ser solucionado pelo
    projeto, no qual este trabalho se insere esta relacionado ao desenvolvimento de
    ferramentas computacionais acuradas e eficiente visando o acompanhamento
    do tratamento de feridas crônicas. Este acompanhamento é de fundamental
    importância para a determinação do quadro de evolução no tratamento do
    paciente. Assim, neste trabalho é proposta uma avaliação quantitativa das
    reconstruções tridimensionais obtidas usandoStructure from Motioncom o
    auxílio de 6 diferentes decritores de pontos. O problema específico atacado é o
    de determinar qual(is) o(s) descritor(es) de pontos mais eficientes e acurados
    para a reconstrução tridimensional de feridas crônicas, tendo sido escolhidos
    os descritores SIFT, SURF, ORB, BRIEF, FREAK e DRINK. Os resultados
    alcançados presumem que a medição das áreas das feridas crônicas pode ser
    obtida por meio da utilização de um smartphone através da metodologia
    abordada. Em relação ao tempo de processamento os descritores baseados em
    pontos flutuantes, o SIFT e o SURF foram os que obtiveram o maior custo
    computacional. No cálculo da área das superfícies das feridas, os descritores
    obtiveram erros médios de 2,61% na utilização com o SIFT, 3,36% para o
    SURF, 10,03% no BRIEF, 6,33% para o ORB, 6,27% no FREAK e 3,74%
    com o DRINK, com uma configuração utilizando 8 imagens. 
     

  • Mostrar Abstract
  • Ulcer is the generic name given to any lesion in the skin tissue or
    mucous. These lesions culminate in the rupture of the epithelium, resulting in the
    exposure of deeper tissues. The complete problem to be solved
    by the project in which this work is inserted refers to the development of
    accurate and efficient computational tools aimed at monitoring
    of treating chronic wounds. This fundamental follow-up
    importance for the determination of the evolution picture in the treatment of
    patient. Thus, in this work, a quantitative evaluation of the
    three-dimensional reconstructions obtained using Structure from Motion with the
    aid of 6 different point descriptors. The specific problem tackled is the
    to determine which point descriptor(s) are most efficient and accurate
    for the three-dimensional reconstruction of chronic wounds, having been chosen
    the descriptors SIFT, SURF, ORB, BRIEF, FREAK and DRINK. The results
    achieved assume that the measurement of chronic wound areas can be
    obtained through the use of a smartphone through the methodology
    addressed. Regarding processing time, descriptors based on
    floating points, SIFT and SURF were the ones with the highest cost
    computation. In calculating the area of wound surfaces, the descriptors
    obtained average errors of 2.61\% when using the SIFT, 3.36\% for the
    SURF, 10.03\% for the BRIEF, 6.33\% for the ORB, 6.27\% for the FREAK and 3.74\% for the
    DRINK, when using a configuration with 8 images.

4
  • NATÁSSIA RAFAELLE MEDEIROS SIQUEIRA
  • Utilização de aprendizado de máquina para Classificação de perfis de consumo de energia elétrica nas diferentes regiões do Brasil

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • MEMBROS DA BANCA :
  • ANNE MAGALY DE PAULA CANUTO
  • BRUNO MOTTA DE CARVALHO
  • DIEGO SILVEIRA COSTA NASCIMENTO
  • Data: 24/02/2023

  • Mostrar Resumo
  • A previsão precisa do consumo de energia pode contribuir significativamente para melhorar a gestão de distribuição e potencialmente contribuir para controlar e reduzir os índices de consumo de energia. O avanço nas técnicas computacionais baseadas em dados estão se tornando cada vez mais robustas e populares por alcançarem bons índices de precisão nos resultados. Este estudo propõe o desenvolvimento de um modelo capaz de classificar perfis de consumo energético no setor residencial, utilizando técnicas de aprendizado de máquina e transferência de aprendizado (do Inglês Transfer Learning). A aplicação de técnicas de Aprendizado de Máquina (AM) na produção energética pode indicar grande potencial para controle e gestão da produção e distribuição de energia elétrica, podendo trazer maior eficiência, melhorar a produção e otimizar a distribuição. Neste estudo, combinamos as técnicas de AM com a transferência de aprendizado que é capaz de utilizar o conhecimento pré estabelecido em novos contextos (bases de conhecimento), tornando o processo de previsão energética mais eficiente e robusto.


  • Mostrar Abstract
  • Accurate forecasting of energy consumption can significantly contribute to improving distribution management and 
    potentially contribute to controlling and reducing energy consumption rates. Advances in data-based computational
     techniques are becoming increasingly robust and popular as they achieve good accuracy in results. This study 
    proposes the development of a model capable of classifying energy consumption profiles in the residential sector, 
    using machine learning and transfer learning techniques. The application of Machine Learning (MA) techniques in 
    energy production can indicate great potential for controlling and managing the production and distribution of 
    electric energy, which can bring greater efficiency, improve production and optimize distribution. In this study, we 
    combine AM techniques with the transfer of learning that is able to use pre-established knowledge in new contexts 
    (knowledge bases), making the energy forecasting process more efficient and robust.

5
  • PAULO ENEAS ROLIM BEZERRA
  • Verificação e Especificação CSP de um Sistema de Intertravamento Ferroviário Baseado em Relés

  • Orientador : MARCEL VINICIUS MEDEIROS OLIVEIRA
  • MEMBROS DA BANCA :
  • AUGUSTO CEZAR ALVES SAMPAIO
  • MARCEL VINICIUS MEDEIROS OLIVEIRA
  • MARTIN ALEJANDRO MUSICANTE
  • Data: 21/03/2023

  • Mostrar Resumo
  • Os Sistemas de Intertravamento Ferroviário (SIF) têm sido implementados há muito tempo como sistemas baseados em relés. No entanto, a verificação de segurança desses sistemas geralmente é feita manualmente a partir de uma análise de diagramas de circuitos elétricos, logo tal verificação não pode ser considerada confiável. Na literatura, abordagens com verificação formal são utilizadas para analisar tais sistemas. No entanto, esse tipo de verificação tende a consumir muitos recursos computacionais, o que dificulta o uso dessas verificações para sistemas industriais. Embora a comprovação formal do comportamento desses sistemas seja eficaz para melhorar a segurança, na literatura existente, os trabalhos geralmente focam na modelagem das transições de estado do sistema, ignorando os comportamentos concorrentes dos componentes independentes. Como consequência, não é possível verificar a existência de problemas de concorrência. Diferentemente de outras abordagens, a metodologia proposta neste trabalho permite a especificação de estados transitórios. Como resultado, é possível realizar uma verificação mais forte, incluindo uma investigação sobre a existência de estados com ciclos sucessivos (ou seja, ringbell effect), que são perigosos em tais sistemas. Uma análise formal do sistema tem potencial para garantir sua segurança. Neste trabalho é apresentada uma proposta de modelo formal de especificação dos estados dos componentes elétricos de SIF baseados em relés utilizando uma linguagem baseada em processos, CSP. Este modelo permite a verificação de tais sistemas com base no comportamento de cada componente, o que permite a análise de certas propriedades como a existência de um estado com um ciclo infinito de sucessões (ou seja, ringbell effect), curtos-circuitos, deadlocks, divergências ou componentes que não podem estar ativados ao mesmo tempo. Além disso, o modelo proposto permite automatizar a verificação formal do sistema por verificação de modelos, focando nos aspectos de concorrência de tais sistemas e fundamentando a análise de novas condições de segurança que não foram consideradas nas abordagens anteriores.


  • Mostrar Abstract
  • Railway Interlocking Systems (RIS) have long been implemented as relay-based systems. However, checking these systems for safety is usually done manually from an analysis of electrical circuit diagrams, which cannot be considered trustful. In the literature, formal verification approaches are used in order to analyse such systems. However, this type of verification tends to consume a lot of computational resources, which hinders the use of these verification for industrial systems that makes the verification of more complex electrical circuits untrustworthy. Although formal proof of the behaviour of these systems is effective in order to improve safety, in the existing literature, the works generally focus on modelling the system state transitions, ignoring the components independent concurrent behaviours. As a consequence, it is not possible to verify the existence of concurrency problems. Differently from other approaches, the methodology proposed in this work allows the specification of transient states. As a result, it is possible to perform a stronger verification, including an investigation about the existence of state succession cycles (i.e. ringbell effect), which are dangerous in such systems. A formal analysis of the system has the potential to guarantee its safety. This work presents a proposal for a formal specification model of the states of the electrical components of relay-based RIS using a process-based language, CSP. This model enables the verification of such systems based on each component behaviour, which allows the analysis of properties like existence of a state with an infinity succession cycle (i.e. ringbell effect), short-circuits, deadlocks or divergences, by simplifying the analysis and logical verification of the system based on the preconditions of the component states. Furthermore, the proposed model allows the automation of the formal verification of the system by model-checking, focusing on the concurrency aspects of such systems and supporting the analysis of new safety conditions that were not considered on previous approaches.

6
  • TIAGO VINÍCIUS REMÍGIO DA COSTA
  • A Software Reference Architecture for Modern Big Data Systems

  • Orientador : EVERTON RANIELLY DE SOUSA CAVALCANTE
  • MEMBROS DA BANCA :
  • ELISA YUMI NAKAGAWA
  • EVERTON RANIELLY DE SOUSA CAVALCANTE
  • LUCAS BUENO RUAS DE OLIVEIRA
  • THAIS VASCONCELOS BATISTA
  • Data: 25/07/2023

  • Mostrar Resumo
  • Big Data is an umbrella term usually referring to data sets whose size grows beyond the ability of traditional methods and tools to gather, store, process, and analyze the available data at a tolerable time and using reasonable computational resources. Big Data systems (BDS) can be found in many fields, providing valuable insights and information to organizations and users. These systems' intrinsic complexity and characteristics require software architectures to meet functional and quality requirements. Reference architectures (RAs) are acknowledged as an important asset in building software architectures as they promote knowledge reuse and guide their development, standardization, and evolution. However, many RAs for BDS are still produced using an ad-hoc approach without following a systematized process for their design and evaluation. This work proposes the Modern Data Reference Architecture (MoDaRA), an RA for BDS founded on a systematic process while gathering industry practice and academic knowledge in this domain. The design of MoDaRA has followed ProSA-RA, a well-defined process to guide the definition of RAs, comprising phases such as architectural analysis, synthesis, and evaluation grounded on curated information sources. MoDaRA has been evaluated considering two use cases from the industry and an RA assessment checklist adapted to BDS.


  • Mostrar Abstract
  • Big Data é um termo genérico que geralmente se refere a conjuntos de dados cujo tamanho cresce para além da capacidade dos métodos e ferramentas tradicionais de coletar, armazenar, processar e analisar dados em um tempo tolerável e utilizando recursos computacionais de forma razoável. Sistemas de Big Data (SBD) podem ser encontrados em diversas áreas, provendo insights e informações úteis a organizações e usuários. A complexidade e as características intrínsecas a esses sistemas requerem arquiteturas de software para satisfazer adequadamente requisitos funcionais e de qualidade. Arquiteturas de referência (ARs) são consideradas um ativo importante na construção de arquiteturas de software uma vez que elas promovem reuso de conhecimento e orientam seu desenvolvimento, padronização e evolução. Entretanto, muitas arquiteturas de referência para BDS ainda são produzidas utilizando uma abordagem ad-hoc sem seguir um processo sistematizado para seu projeto e avaliação. Este trabalho propõe a Modern Data Reference Architecture (MoDaRA), uma AR para SBD fundamentada em um processo sistemático que agrega prática da indústria e conhecimento acadêmico nesse domínio. O projeto da MoDaRA seguiu o ProSA-RA, um processo bem definido para guiar a definição de ARs, compreendendo fases como análise, síntese e avaliação arquitetural estruturadas sobre fontes de informação selecionadas. A MoDaRA foi avaliada considerando dois casos de uso da indústria e um checklist para avaliação de ARs adaptado a SBD.

7
  • ADELINO AFONSO FERNANDES AVELINO
  • SDNoC 42: Modelo de SDNoC baseada em Otimização de Caminhos Mínimos

     
     
  • Orientador : MARCIO EDUARDO KREUTZ
  • MEMBROS DA BANCA :
  • ALISSON VASCONCELOS DE BRITO
  • MARCIO EDUARDO KREUTZ
  • MONICA MAGALHAES PEREIRA
  • Data: 29/09/2023

  • Mostrar Resumo
  • Neste trabalho, desenvolvemos uma nova arquitetura de redes-em-chip
    com base nos conceitos de redes definidas por software. Esta arquitetura se
    mostrou robusta e capaz de melhorar o roteamento em uma rede-em-chip. A
    implementação consiste em um modelo de arquitetura rede-em-chip definida
    por software, explorando o paralelismo de mecanismos de controle usando
    o algoritmo de Dijkstra para encontrar o melhor caminho no roteamento de
    pacotes entre switches. A abordagem propõe uma melhoria significativa na
    latência de comunicação, reduzindo o tempo de espera dos pacotes na fila dos
    controladores e explorando o potencial topológico da rede através do protocolo
    OpenFlow. Os resultados obtidos são promissores, uma vez que o uso do
    algoritmo Dijkstra e o aumento do número de núcleos permitem otimizar a
    latência da comunicação em 100% dos casos em relação ao algoritmo XY.


  • Mostrar Abstract
  • In this work, we developed a new network-on-chip architecture using software-
    defined networks; this architecture proved to be robust and capable of improving
    routing in a network-on-chip. The implementation consists of a software-defined
    network-on-chip architectural model, exploring the parallelism of control me-
    chanisms using Dijkstra’s algorithm to find the best path in packet routing
    between switches. The approach proposes a significant improvement in com-
    munication latency by reducing the waiting time of packets in the controllers’
    queue and exploring the network’s topological potential through the OpenFlow
    protocol. The results obtained are promising. Using the Dijkstra algorithm and
    increasing the number of cores makes optimizing communication latency in
    100% of cases possible compared to the XY algorithm.

     
8
  • CLODOMIR SILVA LIMA NETO
  • Algebrização em lógicas quase-Nelson

  • Orientador : UMBERTO RIVIECCIO
  • MEMBROS DA BANCA :
  • JOAO MARCOS DE ALMEIDA
  • REGIVAN HUGO NUNES SANTIAGO
  • UMBERTO RIVIECCIO
  • RODOLFO ERTOLA BIRABEN
  • Data: 31/10/2023

  • Mostrar Resumo
  • A lógica quase-Nelson é uma generalização recentemente introduzida da lógica construtiva com negação forte de Nelson para um cenário não involutivo. O presente trabalho se propõe a estudar a lógica de quase-Nelson pocrims ($\mathbf{L}_{\mathrm{QNP}}$) e a lógica de quase-N4-reticulados ($\mathbf{L}_{\mathrm{QN4}}$). Isso é feito por meio de uma axiomatização através de um cálculo finito no estilo Hilbert. A principal questão que abordaremos é se a contrapartida algébrica de um determinado fragmento da lógica quase-Nelson (ou classe quase-N4-reticulados) pode ser axiomatizada abstratamente por meio de identidades ou quase-identidades. Nossa principal ferramenta matemática nesta investigação será a representação twist-álgebra. Chegando à questão da algebrização, lembramos que a lógica quase-Nelson (como extensão de $\mathbf{FL_{ew}}$) é obviamente algebrizável no sentido de Blok e Pigozzi. Além disso, mostramos a algebrizabilidade de $\mathbf{L}_{\mathrm{QNP}}$ e $\mathbf{L}_{\mathrm{QN4}}$, que é BP-algebrizável com o conjunto de identidade definidora $E(\alpha) := \{ \alpha \approx \alpha \to \alpha \}$ e o conjunto de fórmula de equivalência $\Delta(\alpha, \beta) := \{ \alpha \to \beta, \beta \to \alpha, \nnot \alpha \to \nnot \beta, \nnot \beta \to \nnot \alpha \}$. Neste documento, registramos os resultados alcançados até o momento e indicamos um plano para os desenvolvimentos a serem incluídos na versão final desta tese.


  • Mostrar Abstract
  • Quasi-Nelson logic is a recently introduced generalization of Nelson's cons\-tructive logic with strong negation to a non-involutive setting. The present work proposes to study the logic of quasi-Nelson pocrims ($\mathbf{L}_{\mathrm{QNP}}$) and the logic of quasi-N4-lattices ($\mathbf{L}_{\mathrm{QN4}}$). This is done by means of an axiomatization via a finite Hilbert-style calculus. The principal question which we will address is whether the algebraic counterpart of a given fragment of quasi-Nelson logic (or class of quasi-N4-lattices) can be axiomatized abstractly by means of identities or quasi-identities. Our main mathematical tool in this investigation will the twist-algebra representation. Coming to the question of algebraiza\-bility, we recall that quasi-Nelson logic (as extensions of $\mathbf{FL_{ew}}$) is obviously algebraizable in the sense of Blok and Pigozzi. Furthermore, we showed the algebraizability of $\mathbf{L}_{\mathrm{QNP}}$ and $\mathbf{L}_{\mathrm{QN4}}$, which is BP-algebraizable with the set of defining identity $E(\alpha) := \{ \alpha \approx \alpha \to \alpha \}$ and the set of equivalence formula $\Delta(\alpha, \beta) := \{ \alpha \to \beta, \beta \to \alpha, \nnot \alpha \to \nnot \beta, \nnot \beta \to \nnot \alpha \}$. In this document, we register the achieved results up to the present moment and indicate a plan for the developments to be included in the final version of this thesis.

9
  • JAIRO RODRIGO SOARES CARNEIRO
  • Um Assistente Virtual de Ensino de Programação para Suporte ao Aprendizado de Domínio

  • Orientador : EDUARDO HENRIQUE DA SILVA ARANHA
  • MEMBROS DA BANCA :
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • THIAGO REIS DA SILVA
  • Data: 06/11/2023

  • Mostrar Resumo
  • [Contexto] Os altos índices de retenção e desistências discentes em cursos de TI e áreas
    correlatas, ainda são barreiras a serem superadas, especialmente quando relacionadas a
    certas disciplinas e/ou conteúdos programáticos presentes em seus currículos, a exemplo da
    programação de computadores. Desse modo, olhares têm sido direcionados aos cursos de
    formação tecnológica, sobretudo, na busca por soluções que possibilitem as Instituições
    educacionais lidar com os desafios à essa questão. [Problemática] Ocorre que ensinar e
    aprender programação em turmas do ensino superior é desafiador. Da perspectiva do trabalho
    docente, questões ligadas aos desafios diários em lidar com o tempo das aulas, currículos
    rígidos, desmotivação estudantil, turmas grandes e heterogêneas, entre outras coisas,
    inviabilizam um acompanhamento mais individualizado do aluno ou acabam por resultar em
    uma sobrecarga de atividades para o professor. Esse excesso de encargo pode prejudicar a
    ação docente não apenas no sentido de assistir aos discentes, mas também na escolha e
    implementação de modelos pedagógicos que sejam contrários ao modelo de ensino
    tradicional, a exemplo do Aprendizado de Domínio, do inglês, Mastery Learning. Esta teoria
    educacional corresponde a uma abordagem pedagógica proposta por Benjamin Bloom, que
    prevê que todos os alunos de uma classe possam progressivamente atingir um mesmo nível de
    compreensão do conteúdo (domínio) quando fornecidas as condições necessárias. Entretanto,
    para o professor o custo de implementação desta abordagem pode ser sobremodo elevado,
    ainda mais quando não subsidiada por tecnologia. [Proposta] Nesse sentido, como forma de
    apoiar as disciplinas de programação introdutória é que este estudo descreve um assistente virtual de programação que integra um conjunto de funcionalidades que pode favorecer a adoção do Aprendizado de Domínio em turmas de programação à medida que contribui com os aspectos de aprendizagem dos alunos, por meio de ações automatizadas. [Objetivo] Esse assistente propõe auxiliar o trabalho docente na promoção de feedback contínuos e customizados. Portanto, este estudo tem como objetivo principal investigar como um Assistente Virtual de Programação, projetados com funcionalidades tais que viabilizem o emprego do Aprendizado de Domínio, pode apoiar o trabalho docente com seus respectivos alunos em disciplinas introdutórias de programação mediadas por plataformas educacionais de ensino e aprendizagem de programação online. [Metodologia] Como ponto de partida para alcançar este objetivo, foi realizado um mapeamento sistemático da literatura, que reuniu 40 estudos primários que tratam do emprego do Aprendizado de Domínio nas áreas de interesse. Em seguida, dois estudos foram planejados e executados com cerca de 300 alunos ingressantes de um curso superior em Tecnologia da Informação, e seus respectivos professores (cinco). O primeiro foi um estudo exploratório realizado para investigar melhor o problema e construir a proposta do assistente virtual. O segundo, um estudo de caso que teve o objetivo de validar a proposta definida. [Resultados] Os resultados apontam que o assistente virtual além de beneficiar os professores na ação de correção dos exercícios de programação propostos e emissão de feedbacks aos discentes, onde mais de 9.000 (nove mil) feedbacks foram concedidos ao longo da disciplina, pode favorecer à adesão do modelo pedagógico de Aprendizado de Domínio pelos professores em turmas introdutórias de programação.


  • Mostrar Abstract
  • [Context] The high rates of student retention and dropout in IT courses and related areas are
    still barriers to be overcome, especially when they are related to certain subjects and/or
    programme content in their curricula, such as computer programming. In this way, attention
    has been focussed on technological training courses, especially in the search for solutions that
    will enable educational institutions to deal with the challenges of this issue. [Problem] It
    turns out that teaching and learning programming in higher education classes is challenging.
    From a teaching perspective, issues related to the daily challenges of dealing with class time,
    rigid curricula, student demotivation, large and heterogeneous classes, among other things,
    make it impossible to provide more individualised support for students or end up resulting in
    an overload of activities for the teacher. This overload can jeopardise teaching not only in
    terms of assisting students, but also in choosing and implementing pedagogical models that go
    against the traditional teaching model, such as Mastery Learning. This educational theory
    corresponds to a pedagogical approach proposed by Benjamin Bloom, who predicts that all
    students in a class can progressively reach the same level of understanding of the content
    (mastery) when provided with the necessary conditions. However, the cost of implementing
    this approach can be very high for teachers, especially when it is not subsidised by technology.
    [Proposal] In this sense, as a way of supporting introductory programming courses, this study
    describes a virtual programming assistant that integrates a set of functionalities that can
    favour the adoption of Mastery Learning in programming classes as it contributes to students'
    learning aspects through automated actions. [Objective] This assistant aims to assist teachers
    in promoting continuous and customised feedback. Therefore, the main objective of this study
    is to investigate how a Virtual Programming Assistant, designed with functionalities that
    enable the use of Mastery Learning, can support the work of teachers with their respective
    students in introductory programming courses mediated by educational platforms for
    teaching and learning programming online. [Methodology] As a starting point for achieving
    this objective, a systematic mapping of the literature was carried out, which brought together
    40 primary studies dealing with the use of Mastery Learning in the areas of interest. Two
    studies were then planned and carried out with around 300 new students on an Information
    Technology degree course and their respective teachers (five). The first was an exploratory
    study carried out to better investigate the problem and build the virtual assistant proposal.
    The second was a case study aimed at validating the defined proposal. [Results] The results
    show that the virtual assistant, in addition to benefiting teachers in correcting the proposed
    programming exercises and giving feedback to students, where over 9,000 (nine thousand)
    feedbacks were given throughout the course, can favour the adherence of the Mastery
    Learning pedagogical model by teachers in introductory programming classes.

10
  • GLAUBER MENDES DA SILVA BARROS
  • Energy-Driven Raft: Um algoritmo de consenso orientado à energia.

  • Orientador : GIBEON SOARES DE AQUINO JUNIOR
  • MEMBROS DA BANCA :
  • FLAVIA COIMBRA DELICATO
  • GIBEON SOARES DE AQUINO JUNIOR
  • NELIO ALESSANDRO AZEVEDO CACHO
  • Data: 18/12/2023

  • Mostrar Resumo
  • Nos últimos anos, os algoritmos de consenso tem se tornado uma parte fundamental para os sistemas distribuídos tolerantes a falhas. Por muitos anos, o algoritmo de consenso amplamente disseminado e que serviu como base entre as diversas aplicações foi o Paxos. Diversos outros algoritmos e variações de consenso baseadas no Paxos tem surgido nos últimos anos, um deles é o algoritmo de consenso Raft. O Raft surgiu com a iniciativa de tornar o entendimento do mecanismo de consenso Paxos mais simples e intuitivo, tanto na área educacional, como nas implementações práticas. Desta forma, ele se tornou um dos algoritmos mais utilizados nas implementações reais. Uma tendência que os sistemas computacionais têm acompanhado nos últimos anos é a troca do uso de baterias como fonte de alimentação energética por uma abordagem que visa coletar energia do ambiente para a operação computacional do dispositivo (Energy Harvester). Este tendência se dá principalmente por questões relacionadas ao meio ambiente, que sofre com a grande quantidade de baterias vindas destes tipos de dispositivos e que serão descartadas ao longo dos próximos anos. Porém, esta abordagem de computação através da coleta de energia do ambiente possui alguns desafios que devem ser superados, sendo o principal deles lidar com a dinamicidade do processo de coleta de energia do ambiente em comparação com um sistema alimentado por uma fonte de energia ilimitada por um determinado período, que é a bateria. Para lidar com essa dinamicidade da coleta de energia do ambiente, uma medida adotada é a computação orientada a energia (energy-driven computing), estes são sistemas que são arquiteturalmente projetados em volta da instabilidade da coleta de energia de ambientes, então estes sistemas buscam adequar a sua operação de acordo com a quantidade de energia que está sendo coletada naquele determinado momento, visando o diminuição do consumo energético em um período de escassez na coleta.

    Com isto, esta pesquisa de mestrado tem como objetivo propor alterações no algoritmo de consenso Raft para adequar a sua utilização em sistemas que coletam energia do ambiente, baseando-se nos conceitos de computação orientada a energia (Energy-Driven Computing). Para isto, é necessário trazer um determinado nível de conhecimento da situação energética para os nós (nodes) que estão operando o Raft em um cluster, e através desse conhecimento da situação atual, cada um consiga adequar as suas operações, visando diminuir o consumo de energia, mas sem comprometer a operação do cluster como um todo.


  • Mostrar Abstract
  • In recent years, consensus algorithms have become a fundamental part of fault-tolerant distributed systems. For many years, the widely disseminated consensus algorithm that served as the basis among the various applications was Paxos. Several other consensus algorithms and variations tolerated in Paxos have emerged in recent years, one of which is the Raft consensus algorithm. Raft came up with the initiative to make the understanding of the Paxos consensus mechanism simpler and more intuitive, both in the educational area and in practical implementations. In this way, it has become one of the most used algorithms in real implementations. A trend that computational systems have followed in recent years is the exchange of the use of batteries as an electrical power source for an approach that aims to collect energy from the environment for the computational operation of the device (Energy Harvester). This trend is mainly due to issues related to the environment, which suffer from the large amount of batteries coming from these types of devices and which will be discarded over the next few years. However, this approach of dealing through the collection of energy from the environment has some challenges that must be overcome, the main one being dealing with the dynamicity of the process of collecting energy from the environment in comparison with a system powered by an unlimited energy source by a certain period, which is the battery. To deal with this dynamicity of energy collection from the environment, an adopted measure is energy-driven computing, these are systems that are architecturally designed around the instability of energy collection from environments, so these systems seek adjust its operation according to the amount of energy being collected at that particular moment, aiming at reducing energy consumption in a period of savings in collection.

    With this, this master's research aims to propose changes in the Raft consensus algorithm to satisfy its use in systems that collect energy from the environment, based on the concepts of energy-driven computing (Energy-Driven Computing). For this, it is necessary to bring a certain level of knowledge of the energy situation to the nodes (nodes) that are operating the Raft in a cluster, and through this knowledge of the current situation, each one satisfies its operations, observing the consumption of energy consumption , but without compromising the operation of the cluster as a whole.

Teses
1
  • SAMUEL DA SILVA OLIVEIRA
  • Método Paralelo de Superiorização para Problemas de Ajuste de Histórico usando Priors Sísmicos a Suavidade por Partes

  • Orientador : BRUNO MOTTA DE CARVALHO
  • MEMBROS DA BANCA :
  • BRUNO MOTTA DE CARVALHO
  • EDGAR GARDUNO ANGELES
  • ISLAME FELIPE DA COSTA FERNANDES
  • MARCIO EDUARDO KREUTZ
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • Data: 13/02/2023

  • Mostrar Resumo
  • History Matching é um processo muito importante usado no manejo de
    produção de óleo e gás, já que tem como objetivo ajustar um modelo de
    reservatório até que reproduza aproximadamente o comportamento prévio
    de um reservatório real, podendo assim ser utilizado para prever produção
    futura. Este trabalho propõe utilizar um método iterativo para otimização
    com restrições de um modelo de produção de um reservatório, chamado de
    superiorização, para resolver esse problema. O método de superiorização é
    uma abordagem que utiliza dois critérios de otimização, sendo o primeiro o
    resultado de produção e o segundo a suavidade por partes do reservatório, onde
    esse segundo critério busca otimizar seu funcional sem que afete negativamente
    a otimização do primeiro critério. Como abordagem comparativa ao algoritmo
    de busca tabu utilizando o método de superiorização, um algoritmo genético
    foi escolhido, dado que essa técnica é amplamente utilizada na literatura na
    resolução de history matching, além de serem realizados teste com o algoritmo
    de busca tabu tem a abordagem de superiorização. Ambas as técnicas são

    iterativas e usam abordagens populacionais. Como o problema abordado é

    um problema inverso que geralmente é severamente subdeterminado, várias
    soluções possíveis podem existir para sua resolução. Devido a isso, nós também
    propomos a utilização de dados sísmicos dos reservatórios, para através desses
    dados, verificar as falhas presentes no reservatório, de modo que possamos
    usar valores de suavidade por partes, para então diminuir a quantidade de
    resultados possíveis através de uma regularização relevante no segundo critério
    de otimização da versão superiorizada do algoritmo de busca tabu. Outro
    fator crítico no processo de history matching é o tempo de simulação, que é
    geralmente alto. Assim, também propomos investigar o uso de paralelismo
    da solução, utilizando CPU. Os experimentos são realizados em um modelo
    de reservatório 3D, buscando encontrar correspondência para os valores de
    prodição de gás, óleo e água. Os resultados obtidos durante a pesquisa
    mostram que a abordagem paralela diminui o tempo de execução em até
    mais que 70%. Quanto a precisão do resultado, a abordagem genética obteve
    valores melhores, no entanto, a busca tabu juntamente com o método de
    superiorização mostraram resultados similares mas mais estáveis.


  • Mostrar Abstract
  • History Matching is a very important process used in managing oil and gas
    production since it aims to adjust a reservoir model until it closely reproduces
    the past behavior of a actual reservoir, so it can be used to predict future
    production. This work proposes to use an iterative method with constraints
    to optimize a reservoir production model, called superiorization to solve this
    problem. The superiorization method is an approach that uses two optimization
    criteria, the first being the production result and the second being the smooth-
    ness by parts of the reservoir, where this second criterion seeks to optimize its
    function without negatively affecting the optimization of the first criterion. A
    genetic algorithm was chosen as a comparative approach to the tabu search
    algorithm using the superiorization method, given that this technique is widely
    used in the literature for solving history matching, in addition to being tested
    with the tabu search algorithm, it has the superiorization approach. Both
    techniques are iterative and use population-based approaches. As the prob-
    lem addressed is an inverse problem often severely underdetermined, several

    possible solutions may exist for its resolution. Due to this, we also propose
    the use of seismic data from the reservoirs, through these data, to verify the
    faults present in the reservoir so that we can use values of smoothness by
    parts to then reduce the number of possible results through a regularization
    relevant to the second optimization criterion of the superior version of the tabu
    search algorithm. Another critical factor in the history matching process is the
    simulation time, which is generally high. Thus, we also propose investigating
    parallelism in the solution using the CPU. The experiments are carried out
    in a 3D reservoir model to find correspondence for the gas, oil, and water
    yield values. The results obtained during the research show that the parallel
    approach decreases the execution time by up to more than 70%. As for the
    result’s precision, the genetic approach obtained better values. However, the
    tabu search and the superiorization method produced very similar values but
    more stable results.

2
  • LANDERSON BEZERRA SANTIAGO
  • Negações e Implicações Difusas Multidimensionais

  • Orientador : BENJAMIN RENE CALLEJAS BEDREGAL
  • MEMBROS DA BANCA :
  • ANNAXSUEL ARAUJO DE LIMA
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • EDUARDO SILVA PALMEIRA
  • REGIVAN HUGO NUNES SANTIAGO
  • RENATA HAX SANDER REISER
  • THADEU RIBEIRO BENÍCIO MILFONT
  • Data: 02/03/2023

  • Mostrar Resumo
  • Conjuntos Fuzzy Multidimensionais é uma nova extensão dos conjuntos fuzzy no qual os graus de pertinência de um elemento no universo de discurso são vetores em ordem crescente no conjunto dos números reais no intervalo [0, 1]. A principal aplicação deste tipo de conjunto são os problemas de tomada de decisão em grupo com múltiplos critérios, nos quais, no caso n-dimensional, temos um conjunto de situações, que são sempre avaliadas por um número fixo n de especialistas. O caso multidimensional é utilizado quando alguns desses especialistas se omitem em avaliar algumas dessas situações e, portanto, pode ser adequado para resolver problemas de tomada de decisão em grupo com múltiplos critérios e com informação incompleta. Esta tese tem como objetivo investigar as negações fuzzy e as implicações fuzzy no conjunto dos vetores em ordem crescente em [0, 1], ou seja, em L∞ ([0, 1]), com respeito a uma ordem parcial. Serão estudadas ordens parciais, dando atenção especial às ordens admissíveis em L∞ ([0, 1]). Adicionalmente, algumas propriedades e métodos de construção e geração de tais operadores através de negações fuzzy e implicações fuzzy, respectivamente, são apresentados (em particular, será proposta uma noção de somas ordinais de negações fuzzy n-dimensionais e somas ordinais de negações fuzzy multidimensionais em relação a ordens parciais específicas) e é demonstrado que uma ação do grupo dos automorfismos nas implicações em L∞ ([0, 1]) preserva várias propriedades originais da implicação. Através de um tipo específico de implicação fuzzy multidimensional representável, somos capazes de gerar uma classe de negações fuzzy multidimensionais chamada de m-negações naturais. No final é apresentada uma aplicação em problemas de tomada de decisão.


  • Mostrar Abstract
  • Multidimensional fuzzy sets is a new extension of fuzzy sets on which the membership values of an element in the universe of discourse are increasingly ordered vectors on the set of real numbers in the interval [0, 1]. The main application of this type of set are the multi-criteria group decision making problems, in which, in the n-dimensional case, we have a set of situations, which are always evaluated by a fixed number n of experts. The multidimensional case is used when some of these experts refrain to evaluate some of these situations and, therefore, may be suitable for solving multi-criteria group decision making problems with incomplete information. This thesis aims to investigate fuzzy negations and fuzzy implications on the set of increasingly ordered vectors on [0, 1], i.e. on L∞ ([0, 1]), with respect to some partial order. In this thesis we study partial orders, giving special attention to admissible orders on L∞ ([0, 1]). In addition, some properties and methods to construct and generate such operators from fuzzy negations and fuzzy implications, respectively, are provided (in particular, a notion of ordinal sums of n-dimensional fuzzy negations and ordinal sums of multidimensional fuzzy negations will be proposed with respect to specific partial orders) and we demonstrate that an action of the group of automorphisms on fuzzy implications on L∞ ([0, 1]) preserves several original properties of the implication. Using a specific type of representable multidimensional fuzzy implication, we are able to generate a class of multidimensional fuzzy negations called natural m-negations. In the end, an application in decision-making problems is presented.

3
  • RANMSÉS EMANUEL MARTINS BASTOS
  • Investigação de Modelos e Algoritmos para o Problema do Caixeiro Viajante com Múltiplos Passageiros e Lotação

  • Orientador : ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MEMBROS DA BANCA :
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • LUCÍDIO DOS ANJOS FORMIGA CABRAL
  • MARCO CESAR GOLDBARG
  • MATHEUS DA SILVA MENEZES
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • Data: 27/03/2023

  • Mostrar Resumo
  • O Problema do Caixeiro Viajante com Múltiplos Passageiros e Lotação constitui uma generalização do Problema do Caixeiro Viajante que lhe adiciona características do mundo real, transformando-o em um problema de ridesharing com restrições de roteamento. Nessa modalidade, o caixeiro oferece caronas a terceiros ao longo da rota visando compartilhar os custos da viagem. As ligações entre cidades podem conter pedágios do tipo High-Occupancy, no qual há isenção da tarifa caso o veículo esteja com todos os assentos ocupados. Quando cobradas, as despesas de pedágio são inteiramente pagas pelo caixeiro. Os demais custos são divididos igualmente entre o caixeiro e todos os passageiros que ocupam assentos em seus respectivos percursos. O objetivo do PCV-MPL é encontrar o ciclo Hamiltoniano com o menor custo, calculado pela soma das despesas arcadas pelo caixeiro. Tais características promovem a eficiência no uso do espaço urbano e a redução das emissões de gases de efeito estufa, dado o incentivo para compartilhamento do meio de transporte com um número maior de pessoas. Esta tese apresenta o estudo deste novo problema de otimização combinatória, iniciando pela análise da relação existente com outros modelos na literatura. Em seguida, é abordada a formulação matemática do problema com diversas variantes para representação de suas restrições. Por fim, são criados algoritmos para encontrar soluções de boa qualidade em curto espaço de tempo. Com o intuito de realizar experimentos computacionais, é realizada a geração de um banco de instâncias artificiais e a implementação dos métodos de solução. Dez modelos matemáticos são implementados no solver Gurobi para estabelecer um padrão de referência, determinando soluções ótimas para as instâncias e comparando diferentes técnicas de formulação, incluindo restrições lazy e funções lineares piecewise. São propostos também procedimentos para manipular soluções e dez algoritmos heurísticos desenvolvidos com base nas meta-heurísticas Algoritmo Genético, Memético e Transgenética Computacional e na técnica de aprendizado por reforço Q-learning. Três experimentos computacionais são conduzidos: o primeiro controlado pelos parâmetros de iteração máxima, o segundo com limite absoluto de avaliações da função objetivo e o terceiro com limite de avaliações da função objetivo relativo à descoberta da última melhor solução. O ajuste de parâmetros é executado de modo automático pela ferramenta irace. Uma análise estatística baseada no teste Friedman Aligned Ranks indicou um desempenho superior do algoritmo híbrido unindo a Transgenética Computacional, o Algoritmo Memético e a técnica Q-learning.


  • Mostrar Abstract
  • The Traveling Salesman with Multiple Passengers and High Occupancy Problem is a generalization of the Traveling Salesman Problem that incorporates real-world features, transforming it into a ridesharing problem with routing constraints. In this modality, the salesman offers rides to third parties along the route to share the cost of the trip. Links between cities may contain High-Occupancy tolls, in which the toll is waived if the vehicle is fully occupied. When tolls are charged, those expenses are entirely paid by the salesman. All other costs are shared equally between the salesman and all passengers occupying seats on their respective routes. The objective of the TSMPHOP is to find the Hamiltonian cycle with the lowest cost, calculated by the sum of expenses carried by the salesman. Such features promote efficiency in the use of urban space and the reduction of greenhouse gas emissions, given the incentive for sharing transportation with a larger number of people. This thesis presents the study of this new combinatorial optimization problem, beginning with an analysis of its relationship to other models in the literature. Subsequently, the mathematical formulation of the problem is addressed, with multiple variants for representing its constraints. Finally, algorithms are created to find good-quality solutions in a short amount of time. In order to conduct computational experiments, an artificial instance database is generated, and solution methods are implemented. Ten mathematical models are implemented in the Gurobi solver to establish a benchmark, determining optimal solutions for the instances, and comparing different formulation techniques, including lazy constraints and piecewise-linear functions. Procedures for manipulating solutions and ten heuristic algorithms are also proposed. The algorithms are developed based on the metaheuristics Genetic Algorithm, Memetic Algorithm, Transgenetic Algorithm, and Q-learning reinforcement learning technique. Three computational experiments are conducted: the first controlled by the maximum iteration parameter, the second with an absolute maximum count of objective function evaluations, and the third with a maximum count of objective function evaluations relative to the discovery of the last best solution. The parameter tuning is performed automatically by the irace tool. A statistical analysis based on the Friedman Aligned Ranks test indicated superior performance of the hybrid algorithm combining the Transgenetic Algorithm, Memetic Algorithm, and the Q-learning technique.

4
  • CAMILA DE ARAUJO
  • Enriquecendo Descrições de Arquitetura de Software baseada em SysML: Uma Abordagem Orientada a Modelos

  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • FLAVIO OQUENDO
  • LUCAS BUENO RUAS DE OLIVEIRA
  • EVERTON RANIELLY DE SOUSA CAVALCANTE
  • MARCEL VINICIUS MEDEIROS OLIVEIRA
  • THAIS VASCONCELOS BATISTA
  • Data: 31/03/2023

  • Mostrar Resumo
  • A natureza crítica de muitos sistemas complexos de uso intensivo de software requer descrições formais de arquitetura para dar suporte à análise arquitetural automatizada em relação às propriedades de correção. Devido aos desafios de adotar abordagens formais, muitos arquitetos têm preferido usar notações como UML, SysML e seus derivados para descrever a estrutura e o comportamento das arquiteturas de software. No entanto, essas notações semi-formais têm limitações quanto ao suporte à análise arquitetural, principalmente à verificação formal. Este trabalho investiga como oferecer suporte formal a descrições de arquitetura baseadas em SysML para permitir a verificação formal de arquiteturas de software. Como resultado desta pesquisa, a principal contribuição é propor uma abordagem orientada a modelos (MDD) que fornece semântica formal para uma linguagem de arquitetura baseada em SysML, SysADL, por meio de uma transformação contínua das descrições da arquitetura SysADL para as especificações formais correspondentes em PI-ADL, uma linguagem teoricamente bem fundamentada baseada no Pi-calculus de tipo de ordem superior. A implementação da proposta envolve a execução de um processo de 4 fases: (i) transformação modelo-a-modelo (M2M) de modelos SysADL em modelo PI-ADL; (ii) transformação de modelo para texto (M2T) de modelos PI-ADL em código PI-ADL; (iii) geração de arquitetura executável  correspondente e validação da arquitetura; e (iv) verificação de propriedades. O trabalho tem outras contribuições associadas para dar suporte ao processo de 4 fases: (i) uma semântica denotacional para SysADL em função de piadl; (ii) a definição de um processo para suportar a transformação automatizada de modelos SysADL em modelos PI-ADL; (iii) A validação da arquitetura PI-ADL gerada pela transformação MDD para mostrar que está de acordo com a arquitetura original SysADL; e (iv) a verificação de propriedades arquiteturais formais usando rastros de execução. A proposta foi implementada e validada utilizando uma arquitetura de Sistema de Monitoramento de Enchentes.


  • Mostrar Abstract
  • The critical nature of many complex software-intensive systems requires formal architecture descriptions for supporting automated architectural analysis regarding correctness properties. Due to the challenges of adopting formal approaches, many architects have preferred using notations such as UML, SysML, and their derivatives to describe the structure and behavior of software architectures. However, these semi-formal notations have limitations regarding the support for architectural analysis, particularly formal verification. This work investigates how to formally support SysML-based architecture descriptions to enable the formal verification of software architectures. As a result of this research, the main contribution is proposing a model-driven approach (MDD) that provides formal semantics to a SysML-based architectural language, SysADL, through a seamless transformation of SysADL architecture descriptions to the corresponding formal specifications in \piadl, a well-founded theoretically language based on the higher-order typed Pi-calculus. The proposal implementation involves the execution of a 4-phase process: (i) Model-to-Model (M2M) transformation of SysADL models into piadl model; (ii) Model-to-text (M2T) transformation of PI-ADL models into PI-ADL code; (iii) corresponding executable architecture generation, and architecture validation; and (iv) property verification. The work has other associated contributions to support the 4-phase process: (i) a denotational semantics to SysADL as a function of PI-ADL; (ii) a definition of a process to support the automated transformation of SysADL models into piadl models; (iii) The validation of the PI-ADL architecture generated by the MDD transformation to show that it is in accordance with the original SysADL architecture; and (iv) the verification of formal architectural properties using execution traces. The proposal was implemented and validated using a Flood Monitoring System architecture.

5
  • BRUNO FRANCISCO XAVIER
  • Lógica linear como framework lógico 

  • Orientador : CARLOS ALBERTO OLARTE VEGA
  • MEMBROS DA BANCA :
  • CARLOS ALBERTO OLARTE VEGA
  • ELAINE GOUVEA PIMENTEL
  • GISELLE MACHADO NOGUEIRA REIS
  • REGIVAN HUGO NUNES SANTIAGO
  • UMBERTO SOUZA DA COSTA
  • Data: 19/05/2023

  • Mostrar Resumo
  • Esta tese investiga a analiticidade de sistemas de prova por meio da Lógica Linear (LL). A analiticidade é a propriedade de que uma prova de uma fórmula F usa apenas subfórmulas de F. No cálculo de sequentes, essa propriedade é geralmente estabelecida mostrando que a regra de corte é admissível, o que significa que a introdução do lema auxiliar A na proposição “se A segue de B e C segue de A, então C segue de B” pode ser eliminada. No entanto, a eliminação de corte é um processo complexo que envolve múltiplas transformações de prova e requer o uso de procedimentos (semi-)automáticos para evitar erros. LL é uma ferramenta poderosa para estudar a analiticidade de sistemas de prova devido à sua natureza orientada à recursos, ao sistema focado e seu teorema de eliminação de corte. Trabalhos anteriores de Miller e Pimentel utilizaram LL como um framework lógico para estabelecer condições suficientes para a eliminação de corte de lógicas objeto. No entanto, muitos sistemas lógicos não podem ser adequadamente codificados em LL, particularmente sistemas de sequentes para lógicas modais. Nesta tese, propomos um sistema de sequentes aninhados linearmente (LNS, do inglês linear nested sequents) de uma variante de LL com subexponenciais (MMLL) e demonstramos que é possível estabelecer um critério de eliminação de corte para uma classe mais ampla de sistemas lógicos. Isso inclui sistemas de prova LNS para lógicas multimodais clássicas e subestruturais, bem como o sistema LNS para lógica intuicionista. Além disso, apresentamos um estudo detalhado do procedimento de eliminação de corte para LL. Especificamente, propomos um conjunto de regras de corte para sistemas focados em LL, uma variante de LL com subexponenciais (SELL) e MMLL. Nossa pesquisa demonstrou que essas regras de corte são suficientes para estabelecer diretamente a admissibilidade de corte nos sistemas focados. Formalizamos nossos resultados em Coq, um assistente de prova formal, fornecendo procedimentos para verificar a eliminação de corte de vários sistemas lógicos que são comumente usados em filosofia, matemática e ciência da computação.


  • Mostrar Abstract
  • This thesis investigates the analyticity of proof systems using Linear Logic (LL). Analyticity refers to the property that a proof of a formula F only uses subformulas of F. In sequent calculus, this property is typically established by showing that the cut rule is admissible, meaning that the introduction of the auxiliary lemma A in the reasoning “if A follows from B and C follows from A, then C follows from B” can be eliminated. However, cut-elimination is a complex process that involves multiple proof transformations and requires the use of (semi-)automatic procedures to prevent mistakes. LL is a powerful tool for studying the analyticity of proof systems due to its resource-conscious nature, the focused system, and its cut-elimination theorem. Previous works by Miller and Pimentel have used LL as a logical framework for establishing sufficient conditions for cut-elimination of object logics (OL). However, many logical systems cannot be adequately encoded in LL, particularly sequent systems for modal logics. In this thesis, we utilize a linear nested sequent (LNS) presentation of a variant of LL with subexponentials (MMLL) and demonstrate that it is possible to establish a cut-elimination criterion for a broader class of logical systems. This includes LNS proof systems for classical and substructural multimodal logics, as well as the LNS system for intuitionistic logic. Additionally, we present an in-depth study of the cut-elimination procedure for LL. Specifically, we propose a set of cut rules for focused systems for LL, a variant of LL with subexponentials (SELL) and MMLL. Our research demonstrates that these cut rules are sufficient for directly establishing the admissibility of cut within the focused systems. We formalize our results in Coq, a formal proof assistant, providing procedures for verifying cut-admissibility of several logical systems that are commonly used in philosophy, mathematics, and computer science.

6
  • RAFAEL JULLIAN OLIVEIRA DO NASCIMENTO
  •  Um Framework para correção sistematizada de Requirements Smells através de Técnicas de Refatoração.


  • Orientador : MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • MEMBROS DA BANCA :
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • FERNANDA MARIA RIBEIRO DE ALENCAR
  • FRANCISCO MILTON MENDES NETO
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • RICARDO ARGENTON RAMOS
  • Data: 29/05/2023

  • Mostrar Resumo
  • Especificação de Requisitos em Linguagem Natural é um tipo comum de documentação usada no desenvolvimento de sistemas, para conter informações sobre requisitos. A qualidade destas informações é importante para o sucesso de atividades, no desenvolvimento de sistemas, e no próprio gerenciamento dos  requisitos. Porém, a Linguagem Natural pode levar a ambiguidade e outros defeitos que acabam comprometendo Critérios de Qualidade para as informações sobre os requisitos, como entendimento, clareza, completude e outros. Um conjunto destes defeitos estruturais foram estudados por Henning Femmer e nomeados como Requirements Smells. As Requirements Smells são anomalias relacionadas com problemas na escrita de requisitos usando Linguagem Natural. Além disso, estas anomalias podem ocorrer em qualquer template de Especificação em Linguagem Natural. Contudo, apesar da literatura conter uma expressiva quantidade de estudos sobre o comportamento e relação da Requirements Smells com a qualidade dos requisitos, não existem estudos sobre formas de correção sistematizada em Requirements Smells e de como estas correções podem ajudar a restaurar/alcançar os Critérios de Qualidade para requisitos especificados em Linguagem Natural. O objetivo deste trabalho, consiste no desenvolvimento de um conjunto de correções sistematizadas, entituladas de Técnicas de Refatoração, para corrigir Requirements Smells e ajudar para alcançar os Critérios de Qualidade. As Técnicas de Refatoração, serão desenvolvidas seguindo a estrutura sugerida por Martin Fowler, um dos autores pioneiros em refatoração de código. Experimentos serão realizados com participantes que irão revisar requisitos e identificar Requirements Smells e na correção destes requisitos usando as Técnicas de Refatoração propostas. Para isso, um conjunto com 33 Histórias de Usuários infectadas por Requirements Smells serão disponibilizadas aos usuários. Ao final, estes responderão questionários cujas informações serão analisadas e compreendidas. Espera-se que as Técnicas de Refatoração desenvolvidas possam ser eficazes na correção e alcance dos Critérios de Qualidade e se tornem mais uma solução alternativa para a correção de Requirements Smells.


  • Mostrar Abstract
  • Natural Language Requirements Specification is a common type of documentation used in systems development to contain information about requirements. The quality of this information is important for the success of activities, systems development, and requirements management itself. However, Natural Language can lead to ambiguity and other defects that end up compromising Quality Criteria for information about requirements, such as understanding, clarity, completeness and others. A set of these structural defects were studied by Henning Femmer and named as Requirements Smells. Requirements Smells are anomalies related to problems in writing requirements using Natural Language. Furthermore, these anomalies can occur in any Natural Language Specification template. However, despite the literature containing an expressive amount of studies on the behavior and relationship of Requirements Smells with the quality of requirements, there are no studies on ways of systematized correction in Requirements Smells and how these corrections can help restore/achieve  Quality Criteria for requirements specified in Natural Language. The objective of this work is to develop a set of systematized corrections, entitled Refactoring Techniques, to correct Requirements Smells and help to achieve the Quality Criteria. The Refactoring Techniques will be developed following the structure suggested by Martin Fowler, one of the pioneer authors in code refactoring. Experiments will be carried out with participants who will review requirements and identify Requirements Smells and correct these requirements using the proposed Refactoring Techniques. For this, a set of 33 User Stories infected by Requirements Smells will be made available to users. At the end, they will answer questionnaires whose information will be analyzed and
    understood. It is expected that the Refactoring Techniques developed can be effective in correcting and reaching the Quality Criteria and become another alternative solution for Requirements Smells correction.

7
  • JOSÉ DIEGO SARAIVA DA SILVA
  • Understanding the Relationship between Continuous Integration and Code Coverage

  • Orientador : UIRA KULESZA
  • MEMBROS DA BANCA :
  • UIRA KULESZA
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • ROBERTA DE SOUZA COELHO
  • DANIEL ALENCAR DA COSTA
  • GUSTAVO HENRIQUE LIMA PINTO
  • RODRIGO BONIFACIO DE ALMEIDA
  • Data: 31/05/2023

  • Mostrar Resumo
  • Continuous Integration (CI) is a widely adopted software engineering practice emphasizing frequent software integration through an automated build process. Although CI has been shown to detect errors earlier in the software life cycle, the relationship between CI and code coverage still needs to be clarified. Our work aims to fill this gap by investigating quantitative and qualitative aspects of this relationship.

    In the quantitative study, we compare 30 CI projects and 30 projects that have never adopted CI (NOCI projects) to investigate whether CI is associated with higher code coverage rates. We analyzed 1,440 versions from different projects to identify trends in code coverage. Our findings reveal a positive association between CI and higher code coverage rates.

    Our qualitative study consisted of a survey and a document analysis. The survey revealed several significant findings, including a positive association between continuous integration (CI) and higher code coverage rates, indicating the value of CI in promoting testing practices. Additionally, our survey highlighted the importance of using code coverage during the authoring and review process, which can help identify potential issues early in the development cycle.

    The document analysis focused on coverage-related themes in pull request conversations in CI-enabled projects. Through this analysis, we discovered the main topics related to coverage usage during pull requests, which can provide valuable insights into how developers use coverage to improve code quality. This information can help guide the development of best practices for using coverage in CI-enabled projects, ultimately improving the quality and reliability of software products.

    Our work offers insights into the evolution of code coverage in CI, which can assist researchers and practitioners in adopting tools and practices for better monitoring, maintenance, and even enhancement of code coverage.



     
     

  • Mostrar Abstract
  • Integração Contínua, em inglês Continuous Integration (CI), é uma prática amplamente adotada na engenharia de software que enfatiza a integração frequente do software por meio de um processo de builds automatizado. Embora tenha sido demonstrado que a CI detecta erros mais cedo no ciclo de vida do software, a relação entre CI e cobertura de código ainda precisa ser esclarecida. Nosso trabalho tem como objetivo preencher essa lacuna investigando os aspectos quantitativos e qualitativos dessa relação.

    No estudo quantitativo, comparamos 30 projetos com CI e 30 projetos que nunca adotaram CI (projetos NOCI) para investigar se a CI está associada a maiores taxas de cobertura de código. Analisamos 1.440 versões de diferentes projetos para identificar tendências na cobertura de código. Nossas descobertas revelam uma associação positiva entre a CI e maiores taxas de cobertura de código.

    Nosso estudo qualitativo consistiu em um survey e uma análise de documentos. A pesquisa revelou várias descobertas significativas, incluindo uma associação positiva entre a integração contínua (CI) e maiores taxas de cobertura de código, indicando o valor da CI na promoção de práticas de teste. Além disso, nossa pesquisa enfatizou a relevância do uso de cobertura de código durante o processo de autoria e revisão, pois isso pode auxiliar na detecção precoce de possíveis problemas ao longo do ciclo de desenvolvimento.

    A análise de documentos se concentrou em temas relacionados à cobertura nas discussões dos \textit{Pull Requests} de projetos que adotam CI. A partir dessa análise, identificamos os principais tópicos associados ao uso da cobertura durante os Pull Requests, o que pode fornecer informações valiosas sobre como os desenvolvedores utilizam a cobertura para aprimorar a qualidade do código. Essas informações são capazes de orientar o desenvolvimento de melhores práticas para o uso da cobertura em projetos que adotam CI, contribuindo para aprimorar a qualidade e a confiabilidade dos produtos de software.

    O nosso trabalho permitiu encontrar percepções sobre a evolução da cobertura de código em projetos que adotam CI, as quais podem auxiliar pesquisadores e profissionais a adotarem ferramentas e práticas para monitorar, manter e, inclusive, aprimorar a cobertura de código.



     
8
  • ALEXANDRE GOMES DE LIMA
  • Melhorando o Rotulamento de Papel Retórico Legal Através de Dados Adicionais e Uso Eficiente de Modelos Transformadores

  • Orientador : EDUARDO HENRIQUE DA SILVA ARANHA
  • MEMBROS DA BANCA :
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • IVANOVITCH MEDEIROS DANTAS DA SILVA
  • JOSÉ GUILLERMO MORENO
  • LEONARDO CESAR TEONACIO BEZERRA
  • TAOUFIQ DKAKI
  • Data: 29/06/2023

  • Mostrar Resumo
  • Legal AI, a aplicação da Inteligência Artificial (IA) no domínio legal, é um campo de pesquisa que compreende várias dimensões e tarefas de interesse. Tal como em outros domínios de aplicação, um dos benefícios almejados é a automatização de tarefas, a qual aumenta a produtividade dos profissionais da área e torna o Direito mais acessível ao público em geral. Texto é uma fonte de dados importante no domínio legal, consequentemente Legal AI possui um grande interesse nos avanços relacionados ao Processamento de Linguagem Natural (PLN). Esta tese diz respeito à automatização do Rotulamento de Papel Retórico no Domínio Legal (RPRDL), uma tarefa que atribui funçoes semânticas a sentenças textuais em documentos jurídicos. RPRDL é uma tarefa relevante porque ela encontra informação que é útil tanto por si só, bem como para tarefas posteriores tais como sumarização jurídica e recuperação de jurisprudência. Há vários fatores que tornam a RPRDL uma tarefa não trivial, mesmo para os seres humanos: a heterogeneidade das fontes de documentos, a falta de padrões, necessidade de conhecimento específico do domínio e o nível de subjetividade inerente à tarefa. Estes fatores complicadores e o grande volume de documentos jurídicos justificam a automatização da tarefa. Essa automatização pode ser implementada como uma tarefa de classificação de sentenças, ou seja, as sentenças textuais são utilizadas como entrada de um modelo que atribui um rótulo, ou classe, para cada sentença informada. A utilização de Modelos Transformadores de Linguagem Pré-treinados (MTLP) no desenvolvimento de classificadores é uma escolha óbvia visto que MTLP representam o estado da
    arte de muitas tarefas de PLN, incluindo a classificação de texto. No entanto,esta tese evidencia dois  roblemas relevantes encontrados em trabalhos sobre RPRDL suportados por MTLP. O primeiro problema é a falta de trabalhos sobre melhores maneiras de lidar com as idiossincrasias de textos jurídicos e com conjuntos de dados relacionados à tarefa de RPRDL os quais são normalmente pequenos e desbalanceados. Quase todos os trabalhos relacionados empregam apenas a estratégia padrão de ajuste fino para treinar seus modelos. O segundo problema é o aproveitamento parcial da capacidade de exploração de contexto que é intrínseca aos MTLPs, um fato que prejudica o desempenho dos modelos. Diante disso, esta tese tem como objetivo avançar o estado da arte na tarefa de RPRDL por meio de três abordagens concebidas para superar esses problemas.
    A primeira abordagem tem base em um método de aumento de dados para gerar vetores representativos de sentença sintéticos, aumentando assim a quantidade de dados de treinamento. A segunda abordagem combina representação de conteúdo e representação posicional para enriquecer os vetores de treinamento.
    A terceira abordagem, denominada Preenchimento Dinâmico de Blocos de Sentença Contextualizados (PDBSC), define uma forma de produzir vetores representativos de sentença de alta qualidade através de uma utilização eficiente das capacidades de codificação dos MTLP. Os estudos realizados nesta tese mostram que as duas primeiras abordagens têm um impacto limitado no desempenho dos modelos. Por outro lado, os modelos baseados na abordagem PDBSC obtêm resultados notáveis e são os que apresentam melhor desempenho
    nos respectivos estudos. A nossa conclusão é que a abordagem PDBSC é uma contribuição valiosa para o estado da arte em RPRDL. 

  • Mostrar Abstract
  • Legal AI, the application of Artificial Intelligence (AI) in the legal domain, is a research field that comprises several dimensions and tasks of interest. As in other targeted application domains, one of the desired benefits is task automation, which increases the productivity of legal professionals and makes law more accessible to the general public. Text is an important data source in the legal domain, therefore Legal AI has a great interest in the Natural Language Processing advances. This thesis concerns the automation of the Legal Rhetorical Role Labeling (RRL), a task that assigns semantic functions to sentences in legal documents. Legal RRL is a relevant task because it finds information that is useful both by itself and for downstream tasks such as legal summarization and case law retrieval. There are several factors that make legal RRL a non-trivial task, even for humans: the heterogeneity of document sources, the lack of standards, the domain expertise required, and the subjectivity inherent in the task. These complicating factors and the large volume of legal documents justify the automation of the task. Such automation can be implemented as a sentence classification task, i.e. sentences are fed to a machine learning model that assigns a label or class to each sentence. Developing such models on the basis of Pre-trained Transformer Language Models (PTLMs) is an obvious choice, since PTLMs are the current state of the art for many NLP tasks, including text classification. Nevertheless, in this thesis we highlight two main problems with works that exploit PTLMs to tackle the Legal RRL task. The first one is the lack of works that address how to better deal with the idiosyncrasies of legal texts and the typically small size and imbalance of Legal RRL datasets. Almost all related works simply employ the regular fine-tuning strategy  to train models.

    The second problem is the poor utilization of the intrinsic ability of PTLMs to exploit context, which hampers the performance of the models. This thesis aims to advance the current state of the art on the Legal RRL task by presenting three approaches devised to overcome such problems. The first approach relies on a data augmentation technique to generate synthetic sentence embeddings, thus increasing the amount of training data. The second approach makes use of positional data by combining sentence embeddings and positional embeddings to enrich the training data. The third approach, called Dynamically-filled Contextualized Sentence Chunks (DFCSC), specifies a way to produce efficient sentence embeddings by better exploiting the encoding capabilities of PTLMs. The studies in this thesis show that the first two approaches have a limited impact on the performance of the models. Conversely, models based on the DFCSC approach achieve remarkable results and are the best performers in the respective studies. Our conclusion is that the DFCSC approach is a valuable contribution to the state of the art of the Legal RRL task.

9
  • CEPHAS ALVES DA SILVEIRA BARRETO
  • Seleção e Rotulagem de Instâncias para Métodos Semissupervisionados Indutivos

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • MEMBROS DA BANCA :
  • ANNE MAGALY DE PAULA CANUTO
  • DIEGO SILVEIRA COSTA NASCIMENTO
  • GEORGE DARMITON DA CUNHA CAVALCANTI
  • JOAO CARLOS XAVIER JUNIOR
  • KARLIANE MEDEIROS OVIDIO VALE
  • LEONARDO CESAR TEONACIO BEZERRA
  • Data: 24/07/2023

  • Mostrar Resumo
  • Nos últimos anos, a utilização de técnicas de Aprendizado de Máquina (AM) para resolver
    problemas reais tem se tornado muito comum e um padrão tecnológico adotado em uma
    infinidade de domínios. Uma série desses domínios, entretanto, não possui dados rotulados
    suficientes para proporcionar aos métodos de AM um bom desempenho. Para tratar
    esse problema, foram desenvolvidos os métodos de aprendizado semissupervisionado, um
    tipo de método capaz de utilizar as instâncias rotuladas e não-rotuladas na construção
    de seu modelo. Dentre os métodos de aprendizado semissupervisionado, destacam-se os
    métodos wrapper. Essa categoria de métodos utiliza um processo, muitas vezes iterativo,
    que envolve: treinamento do método com os dados rotulados; seleção dos melhores dados
    não-rotulados; e rotulagem dos dados selecionados. Apesar de se mostrar um processo
    simples e eficiente, é muito comum que erros na seleção ou na rotulagem ocorram, o que
    acaba por deteriorar o desempenho final do método. Buscando a diminuição dos erros
    de seleção e rotulagem em métodos wrapper, esta pesquisa tem por objetivo estabelecer
    abordagens de seleção e rotulagem mais robustas e menos suscetíveis a erros. Para tal, são
    propostas uma abordagem de seleção e rotulagem de instâncias baseada em concordância
    de classificação e também uma abordagem de seleção baseada na utilização de métrica
    de distância como fator adicional a um critério de seleção já utilizado (e.g. confiança ou
    concordância). As abordagens propostas podem ser aplicadas a qualquer método wrapper
    e foram testadas sobre 42 datasets nos métodos Self-training e Co-training. Os resultados
    obtidos até o momento apontam que as propostas trazem ganhos para os dois métodos em
    termos de acurácia e também de F-measure.


  • Mostrar Abstract
  • In recent years, the use of Machine Learning (ML) techniques to solve real problems has
    become very common and a technological pattern adopted in plenty of domains. However,
    several of these domains do not have enough labelled data to give ML methods a good
    performance. This problem led to the development of Semi-supervised methods, a type of
    method capable of using labelled and unlabelled instances in its model building. Among
    the semi-supervised learning methods, the wrapper methods stand out. This category of
    methods uses a process, often iterative, that involves: training the method with labelled
    data; selection of the best data from the unlabelled set; and labelling the selected data.
    Despite showing a simple and efficient process, errors in the selection or labelling processes
    are common, which deteriorate the final performance of the method. This research aims
    to reduce selection and labelling errors in wrapper methods to establish selection and
    labelling approaches that are more robust and less susceptible to errors. To this end, this
    work proposes a selection and labelling approach based on classification agreement and a
    selection approach based on distance metric as an additional factor to an already used
    selection criterion (e.g. confidence or agreement). The proposed approaches can be applied
    to any wrapper method and were tested on 42 datasets in Self-training and Co-training
    methods. The results obtained so far indicate that the proposals bring gains for both
    methods in terms of accuracy and F-measure.

10
  • FERNANDO NERES DE OLIVEIRA
  • Sobre novas técnicas de contrapositivização para (co)implicações difusas (de valor intervalar) e suas generalizações

  • Orientador : REGIVAN HUGO NUNES SANTIAGO
  • MEMBROS DA BANCA :
  • REGIVAN HUGO NUNES SANTIAGO
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • ANDERSON PAIVA CRUZ
  • RENATA HAX SANDER REISER
  • RUI EDUARDO BRASILEIRO PAIVA
  • Data: 28/07/2023

  • Mostrar Resumo
  • Neste trabalho, introduzimos vários operadores de contrapositivização para implicações difusas, apresentamos um amplo estudo de cada um destes operadores com respeito às principais propriedades rotineiramente requeridas por implicações difusas, provamos que as classes destes contrapositivizadores são invariantes por automorfismos e apresentamos algumas condições para a $N$-compatibilidade das respectivas contrapositivizações, propomos alguns métodos de construção de classes de normas triangulares (quasi-overlaps), conormas triangulares (quasi-groupings) e funções de agregação a partir destes contrapositivizadores; introduzimos a técnica de contrapositivização Min-Max para implicações difusas e algumas de suas generalizações; introduzimos quatro operadores de contrapositivização para coimplicações difusas chamados contrapositivizadores co-upper, co-lower, co-medium e co-($S$,$N$)-, caracterizamos estes operadores do ponto de vista das propriedades que são geralmente atribuídas às coimplicações difusas, apresentamos condições suficientes para a $N$-compatibilidade das contrapositivizações co-upper, co-lower, co-medium e co-($S$,$N$)-, mostramos que as classes de contrapositivizadores co-upper, co-lower, co-medium e co-($S$,$N$)- são fechadas sob a ação de automorfismos e propomos um método de construção de conormas triangulares a partir de co-($S$,$N$)-contrapositivizadores de ($T$,$N$)-coimplicações e negações difusas; e finalmente, propomos as classes de contrapositivizadores upper, lower e medium de valor intervalar e caracterizamos amplamente cada uma delas, mostramos que ambas as classes são invariantes por automorfismos de valor intervalar, introduzimos a noção de $N$-compatibilidade para as respectivas contrapositivizações de valor intervalar e provamos que as melhores representações intervalares de contrapositivizadores upper, lower e medium de valor real são, respectivamente, contrapositivizadores upper, lower e medium de valor intervalar.


  • Mostrar Abstract
  • In this work, we introduce several contrapositivisation operators for fuzzy implications, we present a wide study of each of these operators with respect to the main properties routinely required by fuzzy implications, we prove that the classes of these contrapositivisators are invariant by automorphisms and present some conditions for the $N$-compatibility of the respective contrapositivisations, we propose some construction methods of classes of triangular norms (quasi-overlaps), triangular conorms (quasi-groupings) and aggregation functions from these contrapositivisators; we introduce the Min-Max contrapositivisation technique for fuzzy implications and some of its generalizations; we introduce four contrapositivisation operators for fuzzy coimplications so-called co-upper, co-lower, co-medium and co-($S$,$N$)- contrapositivisators, we characterize these operators from the point of view of the properties that are usually attributed to the fuzzy coimplications, we present sufficient conditions for the $N$-compatibility of the co-upper, co-lower, co-medium and co-($S$,$N$)- contrapositivisations, we show that the classes of co-upper, co-lower, co-medium and co-($S$,$N$)- contrapositivisators are closed under the action of automorphisms and we propose a construction method of triangular conorms from co-($S$,$N$)-contrapositivisators of ($T$,$N$)-coimplications and fuzzy negations; and finally, we propose the classes of interval-valued upper, lower and medium contrapositivisators and broadly characterize each one of them, we show that both classes are invariant by interval-valued automorphisms, we introduce the notion of $N$-compatibility for the respective interval-valued contrapositivisations and we prove that the best interval representations of real-valued upper, lower and medium contrapositivisators are, respectively, interval-valued upper, lower and medium contrapositivisators.

11
  • FELIPE SAMPAIO DANTAS DA SILVA
  • Controle de Mobilidade Inteligente Orientado por Cloud-Network Slicing em Infraestruturas 5G

  • Orientador : AUGUSTO JOSE VENANCIO NETO
  • MEMBROS DA BANCA :
  • AUGUSTO JOSE VENANCIO NETO
  • DANIEL CORUJO
  • EDUARDO COELHO CERQUEIRA
  • LISANDRO ZAMBENEDETTI GRANVILLE
  • ROGER KREUTZ IMMICH
  • VICENTE ANGELO DE SOUSA JUNIOR
  • Data: 31/07/2023

  • Mostrar Resumo
  • A 5ª geração de redes móveis (5G, do inglêsFifth Generation) foi concebida para prover uma maior capacidade de conectividade em termos de cobertura e suporte à uma maior diversidade de tipos de serviço, tráfego e usuários (UE, do inglêsUser Equipment) com padrões de mobilidade diversos e requisitos críticos de Qualidade de Serviço (QoS, do inglêsQuality of Service) para melhor conformidade com a Qualidade da Experiência (QoE, do inglêsQuality of Experience) do usuário. Ao incorporar novas tecnologias como a Computação em Nuvem
    (do inglêsCloud Computing) e a Computação de Borda de Acesso Múltiplo (MEC, do inglês Multi-access Edge Computing), as infraestruturas 5G aumentarão as suas capacidades de rede e de nuvem dentro das Redes de Acesso por Rádio (RAN, do inglêsRadio Access Networkpara mais próximo dos usuários finais, assim permitindo maior agilidade na entrega de conteúdo e serviços. Neste contexto, novos paradigmas como o fatiamento de recursos de rede (NS, do inglêsNetwork Slicing), tem sido amplamente adotado por sua capacidade de habilitar
    a infraestrutura para a implantação de serviços de forma personalizada e elástica. O network-slicing é promovido por meio de um conjunto de componentes de recursos de rede que pode ser estendido através de estratégias de virtualização de recursos físicos e softwarização. Recentemente, a abordagem deslicingde nuvem e rede (CNS, do inglêsCloud-Network Slicing) foi introduzida como uma alternativa para atender as demandas das verticais da indústria, que oferecem seus serviços através de vários domínios administrativos e tecnológicos distribuídos ao
    longo de infraestruturas de nuvem e rede federados. Neste cenário, caracterizado pela inevitabilidade do handover entre as diferentes células existentes na RAN, é primordial que o sistema de gerenciamento da infraestrutura seja estendido com capacidades aprimoradas para manter a experiência do UE durante eventos de mobilidade, se beneficiando da capacidade do fatiamento para orquestrar recursos disponíveis em um ecossistema de nuvem para oferecer um serviço com conectividade contínua e de forma transparente e ágil. Diante disso, é preciso repensar as abordagens tradicionais de gerenciamento de mobilidade para que sejam capazes de dirigir seu modelo de atuação em infraestruturas definidas por CNS, na perspectiva de avançar os serviços móveis das redes 5G. Levantamento recente da literatura revelou trabalhos que promovem o gerenciamento da mobilidade em sistemas definidos por NSs, e a inexistência de mecanismos cientes e dirigidos por CNS. Ademais, os mecanismos existentes gerenciam a mobilidade de entidades associadas aos NSs considerando modelos clássicos que se baseiam em potência de sinal, por exemplo. Em sistemas definidos por CNS, os mecanismos de decisão requerem total conhecimento das instâncias CNS ativas, seus requisitos computacionais e de rede, os serviços
    ativos, nós consumidores de serviços, entre outros aspectos. A pesquisa desenvolvida nesta tese de doutorado preenche essa lacuna ao pavimentar sistemas 5G definidos por CNS a partir de uma abordagem com capacidades de controle e gerenciamento de mobilidade de forma automatizada e proativa em sistemas 5G. As principais contribuições deste trabalho englobam: (i) ampla revisão e discussão sobre mecanismos de decisão dehandoverorientados para a qualidade e compatíveis com os requisitos críticos impostos pelas verticais 5G em sistemas definidos por CNS; (ii) abordagem de gerenciamento e controle de mobilidade orientado por CNS de forma automatizada e proativa e capaz de manter usuários móveis de instâncias CNS sempre bem conectadas e servidas, respeitando as definições fim-a-fim e o alto nível de isolamento requerido; (iii) controle de mobilidade dirigido por conformidade de recursos da CNS e requisitos de QoS dos UEs; (iv) predição e decisão de mobilidade inteligentes para habilitar UEs com conectividade contínua e transparente durante a seleção do melhor ponto de acesso para os serviços do CNS; (v) avaliação da solução proposta em ambiente emulado e composto por tecnologias habilitadoras de sistemas 5G. A performance da solução proposta foi comparada com os principais
    trabalhos do estado da arte e demonstrou maior capacidade em realizar decisões de mobilidade orientada aos requisitos críticos da CNS em termos de cumprimento de SLA e preservação da QoE dos usuários.


  • Mostrar Abstract
  • The 5th generation of mobile networks (5G) is designed to provide high connectivity capacity in terms of coverage and support for a larger diversity of service types, traffic, and users (User Equipment– UE) with diverse mobility patterns and critical Quality of Service (QoS) requirements. By incorporating new technologies such as Cloud Computing and Mobile Edge Computing (MEC), 5G infrastructures will increase network and cloud capabilities within the Radio Access Networks (RAN) closer to end-users, allowing high content and service delivery flexibility. In this context, new paradigms such as network slicing (NS) have been widely adopted for the ability to enable the infrastructure to deploy services in a personalized and elastic way, promoted through a set of network resource components that can be extended through physical resource virtualization strategies and softwarization. Recently, the Cloud-Network Slicing (CNS) approach was introduced as an alternative to meet the demands of industry verticals, which offer their services across multiple administrative and technological domains distributed across the federated cloud and network infrastructures. In this scenario, characterized by the inevitability of handover between the various cells existing in the RAN, the infrastructure management system must be extended with improved capabilities to maintain the UE experience during mobility events, benefiting from the ability of slicing to orchestrate resources available in a cloud ecosystem to deliver a service with seamless connectivity in a transparent and agile manner. Therefore, it is necessary to rethink traditional mobility management approaches to direct their operating model in infrastructures defined by CNS to advance mobile services on 5G networks. A recent survey of the literature revealed works that promote mobility management in systems defined by NSs and the inexistence of mechanisms driven by CNS. Furthermore, existing mechanisms manage the mobility of entities associated with NSs considering classical models based on signal strength. However, in systems defined by CNS, decision mechanisms require complete knowledge of active CNS instances, their computational and network requirements, operational services, service-consuming nodes, among other aspects. The research developed in this Ph.D. thesis intends to fill this gap and pave 5G systems defined by CNS from an approach with automated and proactive mobility control and management capabilities in 5G systems. The main contributions of this research include: (i) broad review and discussion on quality-oriented handover decision mechanisms in compliance with the critical requirements imposed by 5G verticals in CNS defined systems; (ii) an automated and proactive approach to mobility management guided by CNS, capable of maintaining mobile users of CNS instances always best connected and served, respecting the end-to-end definitions and the high level of isolation; (iii) provide compliance-driven mobility control of CNS resources and UEs QoS requirements to act as a trigger for network re-orchestration events (e.g., mobility load balancing); (iv) intelligent mobility prediction and decision to enable UEs (not necessarily in transit) with seamless and transparent connectivity while selecting the best access point for CNS services.
12
  • MURILO OLIVEIRA MACHADO
  • Investigação da Adição de Métodos de Aprendizado e Programação Matemática em uma Arquitetura de Hibridização de Meta-heurísticas para Problemas de Otimização com Decisões em Múltiplos Níveis

  • Orientador : ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MEMBROS DA BANCA :
  • CAROLINA DE PAULA ALMEIDA
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • GUSTAVO DE ARAUJO SABRY
  • ISLAME FELIPE DA COSTA FERNANDES
  • MATHEUS DA SILVA MENEZES
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • Data: 02/08/2023

  • Mostrar Resumo
  • A hibridização de meta-heurísticas é um tópico que vem sendo estudado por diversos pesquisadores dado ao seu potencial de produzir heurísticas mais eficientes do que aquelas baseadas em uma única técnica. Tal hibridização, entretanto, não é uma tarefa fácil, uma vez que existem diversas maneiras de operacionaliza-la. A tarefa se torna ainda mais difícil quando existem três ou mais métodos meta-heurísticos a serem hibridizados ou quando se deseja adicionar métodos de Programação Matemática, construindo, assim, matheurísticas. Diversos métodos foram propostos para hibridizar meta-heurísticas, incluindo algumas técnicas que automatizam a hibridização, como é o caso de arquiteturas multi-agentes. Um pequeno número destas arquiteturas se utiliza de técnicas de aprendizado e um número ainda mais restrito lida com  matheurísticas. Este trabalho estende os recursos da Arquitetura Multi-agentes para Hibridização de Meta-heurísticas incluindo técnicas de aprendizado e de Programação Matemática.  A forma da aplicação das técnicas de aprendizado é inovadora contemplando à escolha feita pelos agentes de heurísticas a serem aplicadas em diferentes momentos da busca. Este trabalho propõe uma nova forma de hibridização hierárquica para problemas de Otimização Combinatória que possuem múltiplos níveis de decisão. As propostas algorítmicas são testadas no Problema do Caixeiro Viajante Alugador com Passageiros e no Problema de Cabeamento em Usinas Eólicas. Este problemas pertencem à classe NP-difícil e exigem a tomada de decisão em mais de um nível. No caso do Caixeiro Viajante Alugador com Passageiros a tomada de decisão se dá em três níveis: rota, tipos de carros utilizados e atendimento de demanda por caronas. No caso do cabeamento em usinas eólicas são exigidas decisões do local de cabeamento e tipo de cabo a ser empregado em cada trecho. Os experimentos para o Caixeiro Viajante Alugador com Passageiros foram feitos para três classes de instâncias, em um total de noventa e nove casos de teste com tamanho variando de 4 a 80 cidades, 2 a 5 veículos e 10 a 240 pessoas demandando transporte. O Problema de Cabeamento em Usinas Eólicas foi alvo de experimentos que envolveram um conjunto de 200 instâncias. Essas instâncias são simulações de situações reais desenvolvidas em colaboração com especialistas da área. As abordagens propostas neste trabalho são comparadas a algoritmos do estado-da-arte para ambos os problemas.


  • Mostrar Abstract
  • The hybridization of metaheuristics is a topic that several researchers have studied due to its potential to produce more efficient heuristics than those based on a single technique. However, hybridization is not easy, as there are several ways to operationalize it. The task becomes even more challenging when three or more metaheuristic methods need to hybridize or when someone wants to add Mathematical Programming methods, thus creating matheuristics. Various methods have been proposed to hybridize metaheuristics, including some techniques that automate hybridization, such as multi-agent architectures. A few of these architectures use learning techniques, and an even smaller number deal with matheuristics. This work extends the capabilities of the Multi-agent Architecture for Metaheuristic Hybridization by including learning techniques and Mathematical Programming. The application of learning techniques is innovative, considering the agents' choice of heuristics to apply at different search stages. This work proposes a new form of hierarchical hybridization for Combinatorial Optimization problems with multiple decision levels. The algorithmic proposals are tested on the Traveling Car Renter with Passengers and the Cable Routing Problem in Wind Farms. These problems belong to the NP-hard class and require decision-making at multiple levels. In the case of the Traveling Car Renter with Passengers, there are three decision levels: route, car types, and customers' transport demand. Cable routing in wind farms requires decisions concerning the cable locations and the cable type used in each section. The experiments for the Traveling Car Renter with Passengers were conducted on three classes of instances, totaling ninety-nine test cases ranging from four to eighty cities, two to five vehicles, and ten to a hundred forty people requiring transportation. Experiments for The Cable Routing Problem in Wind Farms involved a set of two hundred instances. These instances are simulations of real situations developed in collaboration with domain experts. The approaches proposed in this work are compared to state-of-the-art algorithms for both problems.

13
  • JHOSEPH KELVIN LOPES DE JESUS
  • Automações não-supervisionadas na Abordagem de Seleção Dinâmica de Atributos baseada na Fronteira de Pareto

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • MEMBROS DA BANCA :
  • ALUISIO IGOR REGO FONTES
  • ANNE MAGALY DE PAULA CANUTO
  • ARAKEN DE MEDEIROS SANTOS
  • BRUNO MOTTA DE CARVALHO
  • DANIEL SABINO AMORIM DE ARAUJO
  • Data: 25/08/2023

  • Mostrar Resumo
  • Muitas estratégias de seleção de atributos foram desenvolvidas nas últimas décadas, usando diferentes critérios para selecionar as características mais relevantes. O uso da seleção dinâmica de atributos, entretanto, mostrou que o uso de múltiplos critérios simultaneamente para determinar o melhor subconjunto de atributos para instâncias similares pode fornecer resultados encorajadores. Embora o uso da seleção dinâmica tenha atenuado parte das limitações encontradas em métodos de seleção tradicionais, a utilização exclusiva de critério de avaliação supervisionados e a definição manual da quantidade de grupos a serem utilizados, conduzem a limitações de análises de problemas complexos em cenários não-supervisionados. Neste contexto, esta tese propõe três vertentes da abordagem de seleção dinâmica de atributos baseada na fronteira de pareto, no contexto de pré-processamento e uma vertente no contexto de classificação. A primeira está relacionada com a inclusão de critérios não-supervisionados na versão base do PF-DFS/M. A segunda (PF-DFS/P) e terceira (PF-DFS/A) vertentes são variações da versão base, onde incluem, respectivamente, a automatização parcial e total da definição da quantidade de grupos a serem utilizados no processo de pré-processamento através do uso de um comitê de índices de validação interno. A automatização do hiperparâmetro referente a quantidade grupos permite que, ao invés da escolha arbitrária, sejam utilizados mecanismos que possam auxiliar pesquisadores a lidar com bases de dados não-rotuladas, ou até mesmo a constituir uma análise sob bases rotuladas. A última vertente propõe a utilização de uma mecanismo de ponderação por agrupamento dinâmico para permitir que ao invés de considerar apenas um grupo de atributos para treinar classificadores e testar instâncias, cada instância possa selecionar uma porção de atributos baseada na proporção da similaridade com todos os grupos de atributos. Nas análises investigativas foram utilizados conjuntos de dados reais e artificiais. Os resultados encontrados nas análises empíricas empregadas nesta tese são promissores, demonstrando que o PF-DFS, com a automatização parcial e total da definição da quantidade de grupos a serem utilizados e a utilização da estratégias de ponderação por agrupamento dinâmico, são capazes de obter re-sultados superiores aos métodos de seleção de atributos utilizados como base comparativa, bem como quando comparado ao conjunto original de dados.


  • Mostrar Abstract
  • Several feature selection strategies have been developed in the past decades, using different criteria to select the most relevant features. The use of dynamic feature selection, however, has shown that using multiple criteria simultaneously to determine the best subset of features for similar instances can provide encouraging results. While the use of dynamic selection has alleviated some of the limitations found in traditional selection methods, the exclusive use of supervised evaluation criteria and the manual definition of the number of groups to be used leads to limitations of complex problem analysis in unsupervised scenarios. In this context, this thesis proposes three strands of the dynamic feature selection approach based on the pareto front. The first is related to the inclusion of unsupervised criteria in the base version of PF-DFS/M. The second (PF-DFS/P) and third (PF-DFS/A) strands are variations of the base version, where they include, respectively, partial and full automation of the definition of the number of groups to be used in the preprocessing process through the use of an internal validation index ensemble. The automation of the hyperparameter concerning the number of groups allows, instead of an arbitrary choice, mechanisms to be used that can help researchers to deal with unlabeled databases, or even constitute a deeper analysis under labeled databases. Additionally, an analysis of PF-DFS against noisy data scenarios was proposed. In the investigative analyses real and artificial datasets were used, where the following were evaluated: (I) the performance of PF-DFS in terms of stability and robustness, (II) the behavior of PF-DFS with the inclusion of unsupervised evaluation criteria, and (III) the behavior of PF-DFS with partial and full automation regarding the number of groups.

14
  • THIAGO PEREIRA DA SILVA
  • An Ensemble Online Learning-based Approach for VNF Scaling in the Edge

  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • FLAVIA COIMBRA DELICATO
  • FREDERICO ARAUJO DA SILVA LOPES
  • NELIO ALESSANDRO AZEVEDO CACHO
  • PAULO DE FIGUEIREDO PIRES
  • THAIS VASCONCELOS BATISTA
  • Data: 15/09/2023

  • Mostrar Resumo
  • Edge Computing (EC) platforms have recently been proposed to manage emergency
    applications with high computational load and low response time requirements. EC plat-
    forms take advantage of the distributed nature of edge devices close to end-users and data
    sources, thus minimizing constraints such as bandwidth consumption, network congestion,
    response time, and operational costs imposed by cloud providers. To provide more agility
    and flexibility for service provisioning while reducing deployment costs for infrastructure
    providers, technologies such as Network Functions Virtualization (NFV) are frequently
    used in production environments at the network edge, promoting the decoupling of hard-
    ware and network functions using virtualization technologies. Network or even higher
    layers functions are implemented as Virtual Network Functions (VNFs) software entities.
    The integration of EC and NFV paradigms, as proposed by ETSI MEC, enables the cre-
    ation of an ecosystem for 5G applications. Such integration allows the creation of VNF
    chains, representing end-to-end services for end-users and their deployment on edge nodes.
    A Service Function Chaining (SFC) comprises a set of VNFs chained together in a given
    order, where each VNF can be running on a different edge node. The main challenges
    in this environment concern the dynamic provisioning and deprovisioning of distributed
    resources to run the VNFs and meet application requirements while optimizing the cost
    to the infrastructure provider. In this sense, scaling VNFs in this environment represents
    creating new containers or virtual machines and reallocating resources to them due to the
    variation in the workload and dynamic nature of the EC environment. This work presents
    a hybrid auto-scaling approach for the dynamic scaling of VNFs in the EC environment.
    Such an auto-scaling approach employs an online ensemble machine-learning technique
     that consists of different online machine-learning models that predict the workload. The
    architecture of such an auto-scaling approach follows the abstraction of the MAPE-K
    (Monitor-Analyze-Plan-Execute over a shared Knowledge) control loop to dynamically
    adjust the number of resources in response to workload changes. This approach is innova-
    tive because it proactively predicts the workload to anticipate scaling actions and behaves
    reactively when the prediction model does not meet the desired quality. In addition, the
    proposal requires no prior knowledge of the data’s behavior, making it suitable for use
    in different contexts. We also have developed an algorithm to scale the VNF instances in
    the edge computing environment that uses a strategy to define how many resources to
    allocate or deallocate to a VNF instance during a scaling action. Finally, we evaluated
    the ensemble method and the proposed algorithm, comparing prediction performance and
    the amount of scaling actions and SLA violations.

  • Mostrar Abstract
  • Recentemente, foram propostas plataformas de computação de borda (do inglêsEdge
    Computing) para gerenciar aplicações emergentes com alta carga computacional e baixos
    requisitos de tempo de resposta. De modo a proporcionar mais agilidade e flexibilidade na
    prestação de serviços e, em simultâneo, reduzir os custos de implantação para os prove-
    dores de infraestrutura, tecnologias como a Virtualização das Funções de Rede (NFV, do
    inglêsNetwork Functions Virtualization) são frequentemente utilizadas em ambientes de
    produção na borda da rede. NFV promove o desacoplamento de hardware e funções de
    rede usando tecnologias de virtualização, permitindo que elas funcionem em máquinas
    virtuais ou contêineres como software. As funções de rede ou mesmo funções de camadas
    superiores são implementadas como entidades de software chamadas Funções de Rede
    Virtual (VNFs, do inglêsVirtual Network Functions). A integração dos paradigmas de
    Computação de Borda e NFV, como proposto pelo ETSI MEC, permite a criação de um
    ecossistema para aplicações 5G. Tal integração permite a criação de cadeias de VNF,
    representando serviços ponta a ponta para os usuários finais e sua implantação em nós
    de borda. Uma cadeia de funções de serviço (SFC, do inglêsService Function Chain-
    ing) compreende um conjunto de VNFs encadeadas em uma determinada ordem, onde
    cada VNF pode ser executada em um nó de borda diferente. Os principais desafios neste
    ambiente dizem respeito ao provisionamento dinâmico e ao desprovisionamento de recur-
    sos distribuídos na borda para executar as VNFs e atender às exigências da aplicação,
    otimizando o custo para o fornecedor da infraestrutura. Este trabalho apresenta uma
    abordagem híbrida de dimensionamento automático para o dimensionamento dinâmico
    das VNFs no ambiente de computação de borda. Tal abordagem de autodimensionamento
     emprega uma técnica de aprendizagem de máquinas em conjunto on-line que consiste no
    agrupamento de diferentes modelos de aprendizagem de máquinas on-line que preveem a
    carga de trabalho futura das VNFs. A arquitetura da abordagem proposta segue a ab-
    stração do MAPE-K (do inglêsMonitor-Analyze-Plan-Execute over a shared Knowledge)
    para ajustar dinamicamente o número de recursos em resposta às mudanças de carga de
    trabalho. Esta abordagem é inovadora porque prevê proativamente a carga de trabalho
    para antecipar ações de dimensionamento e se comporta de forma reativa quando o modelo
    de predição não atende a uma qualidade desejada. Além disso, nossa solução não requer
    nenhum conhecimento prévio do comportamento dos dados, o que a torna adequado para
    uso em diferentes contextos. Também desenvolvemos um algoritmo para dimensionar as
    instâncias de VNF, utilizando uma estratégia para definir quantos recursos devem ser
    alocados ou desalocados durante uma ação de dimensionamento. Finalmente, avaliamos o
    método de aprendizado por agrupamento e o algoritmo proposto, comparando o desem-
    penho das predições e a quantidade de ações de dimensionamentos e violações do Acordo
    de Nível de Serviço (SLA, do inglêsService Level Agreement).
15
  • ELIEZIO SOARES DE SOUSA NETO
  • The Effects of Continuous Integration on Software Development: A Causal Investigation

  • Orientador : UIRA KULESZA
  • MEMBROS DA BANCA :
  • DANIEL ALENCAR DA COSTA
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • MARCELO DE ALMEIDA MAIA
  • RODRIGO BONIFACIO DE ALMEIDA
  • SERGIO QUEIROZ DE MEDEIROS
  • UIRA KULESZA
  • Data: 19/09/2023

  • Mostrar Resumo
  • Continuous Integration (CI) is a software engineering technique usually mentioned as one of the foundations of agile methodologies. The main objective of CI is to reduce the cost and risk of code integration among development teams. For such, it preconizes frequent commits to integrate the work from developers into a source code repository and the frequent quality verification via automated builds and tests. Through CI usage, it is expected that development teams can quickly detect and correct issues, improving team productivity and software quality, among other benefits pointed out by researchers and practitioners. Previous studies regarding CI usage highlight several benefits in software development aspects. However, such associations are not mapped as a whole and are not sufficient to conclude that CI is indeed the cause of such results.

    Therefore, the main goal of this work is to investigate such effects of CI adoption on software development from a causal perspective. First, we conducted a systematic literature review to catalog the findings from studies that empirically evaluated the effects of adopting CI. After exploring the existing state-of-the-art, we conducted two studies in order to deepen the comprehension regarding two aspects supposedly impacted by CI: software quality and teams’ productivity. We investigate if there is a causal relationship between CI adoption and such literature-reported effects. For this purpose, we employ causal Direct Acyclic Graphs (causal DAGs) combined with two other strategies: a literature review and a mining software repository (MSR) study. Our results show a panoramic view of CI literature-reported effects and point out that, indeed, there is a causal relationship between CI and software quality.


  • Mostrar Abstract
  • Integração Contínua (Continuous Integration—CI) é uma técnica de engenharia de software comumente mencionada como um dos pilares das metodologias ágeis. CI tem como principal objetivo reduzir o custo e o risco da integração de código entre times de desenvolvimento. Para tal se preconiza a realização de commits frequentes para integrar o trabalho dos desenvolvedores em um repositório de código e a frequente verificação de qualidade através de builds e testes automatizados. Através do uso de CI espera-se que os times de desenvolvimento possam detectar e corrigir erros rapidamente, melhorando a produtividade dos times e a qualidade dos produtos de software desenvolvidos entre outros benefícios apontados por pesquisadores e praticantes. Estudos anteriores sobre o uso de CI apontam diversos benefícios em diversos aspectos do desenvolvimento de software, entretanto tais associações não estão mapeadas como um todo e também não são suficientes para concluir que CI seja de fato a causa de tais resultados.

    Portanto, este trabalho tem como objetivo investigar empiricamente tais efeitos da adoção de CI no desenvolvimento de software sob uma perspectiva causal. Primeiro, nós realizamos uma revisão sistemática de literatura para catalogar os achados de estudos que avaliaram empiricamente os efeitos da adoção de CI. Após explorar o conhecimento já documentado conduzimos dois estudos com o objetivo de aprofundar a compreensão a respeito de dois desses aspectos supostamente afetados pela adoção de CI: qualidade de software e a produtividade dos times de desenvolvimento. Nós pretendemos responder se há uma relação causal entre a adoção de CI e os efeitos reportados na literatura. Para isso utilizamos causal Direct Acyclic Graphs (causal DAGs) combinado a duas outras estratégias: revisão de literatura e um estudo de mineração de repositório de software (Mining Software Repository—MSR). Nossos resultados mostram um panorama dos efeitos de CI reportados na literatura e apontam que há de fato uma relação causal entre CI e qualidade de software.

16
  • ANDRE LUIZ DA SILVA SOLINO
  • Uma Estratégia Autonômica para Escalabilidade Automática de Infraestruturas de Plataformas para Cidades Inteligentes

  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • ANDRÉ GUSTAVO DUARTE DE ALMEIDA
  • CARLOS ANDRE GUIMARÃES FERRAZ
  • EVERTON RANIELLY DE SOUSA CAVALCANTE
  • NELIO ALESSANDRO AZEVEDO CACHO
  • THAIS VASCONCELOS BATISTA
  • Data: 23/11/2023

  • Mostrar Resumo
  • Plataformas de desenvolvimento de aplicações para cidades inteligentes recebem, armazenam, processam e exibem grandes volumes de dados de diferentes fontes e possuem diversos usuários, como cidadãos, visitantes, governo e empresas. A infraestrutura computacional subjacente para suportar essas plataformas deve lidar com a carga de trabalho altamente dinâmica das diferentes aplicações, com acesso simultâneo de vários usuários e, às vezes, trabalhando com muitos dispositivos interconectados. Tal infraestrutura normalmente engloba plataformas de nuvem para armazenamento e computação de dados, capazes de aumentar ou diminuir de acordo com as demandas das aplicações. Esta tese propõe uma abordagem autonômica para escalabilidade automática de infraestruturas de plataformas de cidades inteligentes. A abordagem segue o loop de controle MAPE-K para
    ajustar dinamicamente a infraestrutura em resposta às mudan ̧cas na carga de trabalho. Ele oferece suporte a cenários em que o número de solicitações de processamento é desconhecido a priori. O desempenho da abordagem foi avaliado no contexto da infraestrutura computacional subjacente ao Smart Geo Layers (SGeoL), uma plataforma para o desenvolvimento de aplicações de cidades inteligentes do mundo real.


     
     

  • Mostrar Abstract
  • Smart city application development platforms receive, store, process, and display large volumes of data from different sources and have several users, such as citizens, visitors, government, and companies. The underlying computing infrastructure to support these platforms must deal with the highly dynamic workload of the different applications, with simultaneous access from multiple users and sometimes working with many interconnected devices. Such an infrastructure typically encompasses cloud platforms for data storage and
    computation, capable of scaling up or down according to the demands of applications. This thesis proposes an autonomic approach for autoscaling smart city platform infrastructures. The approach follows the MAPE-K control loop to dynamically adjust the infrastructure in response to workload changes. It supports scenarios where the number of processing requests is unknown a priori. The performance of the approach has been evaluated upon the computational environment that supports Smart Geo Layers (SGeoL), a platform for developing real-world smart city applications.

17
  • MARCELO RÔMULO FERNANDES
  • Understanding Challenges and Recommendations in DevOps Education

  • Orientador : UIRA KULESZA
  • MEMBROS DA BANCA :
  • ANDRE MAURICIO CUNHA CAMPOS
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • ITAMIR DE MORAIS BARROCA FILHO
  • RODRIGO BONIFACIO DE ALMEIDA
  • UIRA KULESZA
  • VINICIUS CARDOSO GARCIA
  • Data: 30/11/2023

  • Mostrar Resumo
  • DevOps represents a set of practices that integrates software development an operation, now widely adopted in the software industry. It involves implementing various vital concepts, such as a culture of collaboration, continuous delivery, and infrastructure as code. The high demand for DevOps practitioners requires non-trivial adjustments in traditional software engineering courses and educational methodologies. As a new area, DevOps has brought significant challenges for the academy regarding research topics and teaching strategies. From an educational perspective, it is essential to understand how existing courses teach fundamental DevOps concepts. In this thesis, we perform empirical studies to investigate existing challenges of DevOps courses and recommendations to overcome them. Understanding those challenges and recommendations can contribute to improving the learning of DevOps concepts and practices. Our first study presents a systematic literature review to identify challenges and recommendations for teaching DevOps. Our findings show a total of 73 challenges and 85 recommendations organized into seven categories (pedagogy, curriculum, assessment, tool, DevOps concepts, class preparation, and environment setup) from 18 papers selected. We also discuss how existing recommendations address the challenges found in the study, thus contributing to the preparation and execution of DevOps courses. Finally, we investigate if challenges and recommendations are specific to teaching DevOps. Our second study involves interviews with 14 DevOps educators from different universities and countries to identify the main challenges and recommendations for DevOps teaching. It identified 83 challenges, 185 recommendations, and several association links and conflicts between them. Our findings can help educators plan, execute, and evaluate DevOps courses.They also highlight several opportunities for reviii searchers to propose new methods and tools for teaching DevOps. The last study in this thesis interviews 11 DevOps educators from different universities to evaluate the usefulness of the reported challenges and recommendations for DevOps education when preparing new courses and improving existing ones. It identified that about 22.6% of the recommendations shown are new to the educators and they are interested in using them to improve their courses. In addition, 64.6% of the challenges shown are relevant to the educators and have useful associated recommendations to overcome the challenges.


  • Mostrar Abstract
  • DevOps representa um conjunto de práticas que integram o desenvolvimento e a operação de software amplamente adotado na indústria atualmente. Ela envolve a implementação de vários conceitos, tais como, cultura de colaboração, entrega contínua e infraestrutura como código. A alta demanda por profissionais DevOps exige ajustes não triviais em cursos tradicionais de engenharia de software e metodologias educacionais. Por ser uma área nova, DevOps trouxe desafios significativos para a academia em relação a temas de pesquisa e estratégias de ensino. Do ponto de vista educacional, é essencial entender como os cursos existentes ensinam os conceitos e práticas fundamentais do DevOps. Nesta tese, realizamos estudos empíricos para investigar os desafios existentes dos cursos de DevOps e recomendações para superá-los. Entender tais desafios e recomendações pode contribuir para melhorar o aprendizado dos conceitos e práticas de DevOps. Em nosso primeiro estudo, apresentamos uma revisão sistemática da literatura que visa identificar desafios e recomendações para o ensino de DevOps. Nossas descobertas mostram um total de 73 desafios e 85 recomendações organizadas em sete categorias (pedagogia, currículo, avaliação, ferramenta, conceitos de DevOps, preparação de aula, configuração de ambiente) de um total de 18 artigos selecionados. Também discutimos como as recomendações existentes abordam os desafios encontrados no estudo, contribuindo assim para a preparação e execução de cursos de DevOps. Por fim, investigamos se os desafios e recomendações são específicos para o ensino de DevOps. Nosso segundo estudo envolveu entrevistas com 14 educadores DevOps de diferentes universidades e países, com o objetivo de identificar os principais desafios e recomendações para o ensino de DevOps. O estudo identificou 83 desafios, 185 recomendações e vários vínculos de associação e conflitos entre eles. Tais resultados podem ajudar educadores a planejar, executar e avaliar cursos de DevOps. Elas também destacam várias oportunidades para os pesquisadores proporem novos métodos e ferramentas para ensinar DevOps. Os estudos restantes desta tese visam avaliar a utilidade dos desafios e recomendações reportados para a educação DevOps na preparação de novos cursos e melhoria dos existentes. Também planejamos analisar o impacto dos desafios e recomendações do ponto de vista da indústria.


2022
Dissertações
1
  • TUANY MARIAH LIMA DO NASCIMENTO
  • Using semi-supervised learning models for creating anew fake news dataset from Twitter posts: a case study on Covid-19 in the UK
    and Brazil

  • Orientador : MARJORY CRISTIANY DA COSTA ABREU
  • MEMBROS DA BANCA :
  • EVERTON RANIELLY DE SOUSA CAVALCANTE
  • LAURA EMMANUELLA ALVES DOS SANTOS SANTANA DE OLIVEIRA
  • MARJORY CRISTIANY DA COSTA ABREU
  • PLACIDO ANTONIO DE SOUZA NETO
  • Data: 14/01/2022

  • Mostrar Resumo
  • Fake News has been a big problem for society for a long time. It has been magnified,reaching worldwide proportions, mainly with the growth of social networks and instantchat platforms where any user can quickly interact with news, either by sharing, throughlikes and retweets or presenting hers/his opinion on the topic. Since this is a very fastphenomenon, it became humanly impossible to manually identify and highlight any fakenews. Therefore, the search for automatic solutions for fake news identification, mainlyusing machine learning models, has grown a lot in recent times, due to the variety oftopics as well as the variety of fake news propagated. Most solutions focus on supervisedlearning models, however, in some datasets, there is an absence of labels for most of theinstances. For this, the literature presents the use of semi-supervised learning algorithmswhich are able to learn from a few labeled data. Thus, this work will investigate the use ofsemi-supervised learning models for the detection of fake news, using as a case study theoutbreak of the Sars-CoV-2 virus, the COVID-19 pandemic.


  • Mostrar Abstract
  • Fake News has been a big problem for society for a long time. It has been magnified,reaching worldwide proportions, mainly with the growth of social networks and instantchat platforms where any user can quickly interact with news, either by sharing, throughlikes and retweets or presenting hers/his opinion on the topic. Since this is a very fastphenomenon, it became humanly impossible to manually identify and highlight any fakenews. Therefore, the search for automatic solutions for fake news identification, mainlyusing machine learning models, has grown a lot in recent times, due to the variety oftopics as well as the variety of fake news propagated. Most solutions focus on supervisedlearning models, however, in some datasets, there is an absence of labels for most of theinstances. For this, the literature presents the use of semi-supervised learning algorithmswhich are able to learn from a few labeled data. Thus, this work will investigate the use ofsemi-supervised learning models for the detection of fake news, using as a case study theoutbreak of the Sars-CoV-2 virus, the COVID-19 pandemic.

2
  • ANDERSON EGBERTO CAVALCANTE SALLES
  • Detecção de faltas internas em SCIG utilizando Sistemas Inteligentes.

  • Orientador : MARCIO EDUARDO KREUTZ
  • MEMBROS DA BANCA :
  • ALVARO DE MEDEIROS MACIEL
  • ANNE MAGALY DE PAULA CANUTO
  • IVANOVITCH MEDEIROS DANTAS DA SILVA
  • LUCIANO SALES BARROS
  • MARCIO EDUARDO KREUTZ
  • MONICA MAGALHAES PEREIRA
  • Data: 31/01/2022

  • Mostrar Resumo
  • O objetivo deste estudo consiste na implementação e avaliação de sistemas inteligentes para detecção das faltas espira-espira e espira-terra em turbinas eólicas baseadas na máquina de indução com rotor em gaiola. Para tanto, é proposta a implementação de dois modelos de aprendizado de máquina, uma rede neural artificial e uma rede neural convolucional, com o propósito de aprenderem as características das correntes elétricas
    do estator e diferenciar uma máquina saudável de uma danificada. Os sistemas são treinados com dados artificiais provenientes de simulações.


  • Mostrar Abstract
  • The objective of this study is the implementation and evaluation of intelligent systems for detecting the turn-turn and turn-ground faults in wind turbines based on the squirrel-cage induction machine. Therefore, it is proposed to implement two machine learning models, an artificial neural network and a convolutional neural network, in order to learn the characteristics of the stator electrical currents and differentiate
    healthy and damaged machines. The systems are trained with artificial data from simulations.

3
  • FAGNER MORAIS DIAS
  • FormAr: Formalização da Arquitetura de Software para Aplicativos Críticos de Cidades Inteligentes

  • Orientador : MARCEL VINICIUS MEDEIROS OLIVEIRA
  • MEMBROS DA BANCA :
  • MARCEL VINICIUS MEDEIROS OLIVEIRA
  • THAIS VASCONCELOS BATISTA
  • FLAVIO OQUENDO
  • Data: 11/02/2022

  • Mostrar Resumo
  • Erros durante o desenvolvimento do software podem originar falhas no sistema que podem causar danos importantes. Uma das etapas mais importantes no processo de desenvolvimento de software é a modelagem da arquitetura do sistema, possivelmente usando linguagens de descrição de arquitetura de software~(ADLs). As ADLs atualmente adotadas pela indústria para sistemas intensivos de software são em sua maioria semiformais e essencialmente baseadas em SysML e perfis especializados. Essas ADLs permitem descrever a estrutura e o comportamento do sistema. Além disso, é possível gerar modelos executáveis ou gerar código em uma linguagem de programação alvo e simular seu comportamento. Isso, no entanto, não constitui prova de que o sistema está correto ou seguro. Este trabalho propõe uma nova abordagem para capacitar ADLs baseadas em SysML com verificação formal suportada por verificação de modelo. Ele apresenta uma semântica baseada em CSP para modelos SysADL. Além disso, este trabalho apresenta como as propriedades de correção podem ser formalmente especificadas usando CSP, e como o verificador de refinamento de modelos FDR4 pode verificar essas propriedades de correção. Finalmente, apresentamos a nova extensão do SysADL studio que permite a transformação automatizada de descrições de arquitetura SysADL para processos CSP e a verificação de propriedades importantes de correção do sistema. Toda a abordagem é ilustrada por meio de um estudo de caso, que também faz parte deste documento. Este estudo de caso demonstra a utilidade de nossa abordagem na prática.


  • Mostrar Abstract
  • Errors during the software development may give rise to flaws in the system that can cause important damages. One of the most important stages in the software development process is modelling the system architecture, possibly using software architecture description languages~(ADLs). The ADLs currently adopted by industry for software-intensive systems are mostly semi-formal and essentially based on SysML and specialized profiles. These ADLs allow describing the structure and the behavior of the system. Besides, it is possible to generate executable models or generate code in a target programming language and simulate its behaviour. This, however, does not constitute proof that the system is correct or safe. This work proposes a novel approach for empowering SysML-based ADLs with formal verification supported by model checking. It presents a CSP-based semantics to SysADL models. Furthermore, this work presents how correctness properties can be formally specified using CSP, and how the FDR4 refinement model-checker can verify these correctness properties. Finally, we present the new extension to SysADL studio that allows the automated transformation from SysADL architecture descriptions to CSP processes and the verification of important system correctness properties. The whole approach is illustrated via a case study, which is also part of this document. This case study demonstrates the usefulness of our approach in practice.

4
  • QUÉZIA EMANUELLY DE OLIVEIRA SOUZA
  • Problema do Caixeiro Viajante Negociante

  • Orientador : MARCO CESAR GOLDBARG
  • MEMBROS DA BANCA :
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MARCO CESAR GOLDBARG
  • MATHEUS DA SILVA MENEZES
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • Data: 14/02/2022

  • Mostrar Resumo
  • Neste trabalho é proposto o Problema do Caixeiro Viajante Negociante (PCV-N), uma Variante do Problema do Caixeiro Comprador, onde além de comprar, o caixeiro busca também vender uma série de produtos no decorrer da viagem, visando assim a maximização do lucro obtido pelo caixeiro. É proposta a descrição do problema, o desenvolvimento das instâncias e uma abordagem com heurística construtiva e aplicação de buscas locais para resolução do PCV-N.

     Neste trabalho é proposto o Problema do Caixeiro Viajante Negociante (PCV-N), uma variante do Problema do Caixeiro Comprador até então não descrita na literatura. Neste problema existe um conjunto de vértices, que atuam como mercados, onde o caixeiro pode comprar ou vender mercadorias. Assim, ele busca comprar um determinado produto em uma cidade e vender em uma outra, de forma que essa operação possa fornecer lucro. O objetivo geral do problema é determinar um ciclo hamiltoniano que visite todos os vértices de um subconjunto uma única vez, realizando operações de compra e venda, de modo a maximizar o lucro obtido. É proposta a descrição detalhada do problema, o desenvolvimento das instâncias para o mesmo, além de duas metaheurísticas de solução visando a obtenção de resultados competitivos, sendo uma GRASP e um algorotimo Transgenético, as quais foram testadas em instâncias que vão de 50 até 350 vértices e, por fim, a partir dos resultados obtidos foi possível concluir que a abordagem transgenética
    conseguiu encontrar resultados melhores do que o GRASP, embora tenha exigido um tempo de processamento superior.
    Palavras-chave: Otimização, Metaheurísticas, Problema do Caixeiro Negociante.


  • Mostrar Abstract
  • In this reserach, the Traveling Tradesman Problem (TTP) is proposed, a variant of the Traveling Purchaser Problempreviously not described in the literature. In this problem there are a set of vertices, which act as markets, where the tradesman can buy or sell goods. Thus, he seeks to buy a certain product in one city and sell it in another, so that this operation provides profit. The purpose of the problem is to determine a Hamiltonian cycle that visits all the vertices of a subset just once, carrying out purchase and sale operations, in order to maximize the profit obtained. It is proposed a detailed description of the problem, the development of instances for it, in addition to two solution metaheuristics in order to obtain competitive results, one GRASP and one Transgenetic algorithm, which were tested in instances ranging from 50 to 350 vertices and, finally, From the results obtained, it was possible to conclude that the transgenetic approach was able to find better results than GRASP, although it required a higher processing time.

5
  • VITOR RODRIGUES GREATI
  • Formalismo ao estilo de Hilbert para noções de consequência bidimensionais
  • Orientador : JOAO MARCOS DE ALMEIDA
  • MEMBROS DA BANCA :
  • REVANTHA RAMANAYAKE
  • CARLOS CALEIRO
  • JOAO MARCOS DE ALMEIDA
  • SÉRGIO ROSEIRO TELES MARCELINO
  • UMBERTO RIVIECCIO
  • YONI ZOHAR
  • Data: 21/02/2022

  • Mostrar Resumo
  • O presente trabalho propõe um formalismo dedutivo bidimensional à Hilbert (H-formalismo) para relações de B-consequência, uma classe de lógicas bidimensionais que generalizam as noções usuais (Tarskianas, unidimensionais) de lógica. Nós argumentamos que o ambiente bidimensional é apropriado para o estudo do bilateralismo em lógica, por permitir que julgamentos primitivos de asserção e denegação (ou, como preferimos, as atitudes cognitivas de aceitação e rejeição) ajam em dimensões independentes e capazes de interagir entre si ao determinar as inferências válidas de uma lógica. Nessa perspectiva, o formalismo proposto constitui um aparato inferencial para raciocinar sobre julgamentos bilateralistas. Após uma descrição detalhada do funcionamento do formalismo proposto, o qual é inspirado nos sistemas de Hilbert simétricos, nós provemos um algoritmo de busca de demonstrações que executa em tempo exponencial, em geral, e em tempo polinomial quando apenas regras contendo no máximo uma fórmula no sucedente estão presentes no sistema em questão. Então, nós passamos a investigar semânticas não-determinísticas bidimensionais por meio de estruturas de matrizes contendo dois conjuntos de valores distinguidos, um qualificando alguns valores de verdade como aceitos, e o outro, alguns valores como rejeitados, constituindo um caminho semântico para o bilateralismo no ambiente bidimensional. Nós apresentamos e implementamos também um algoritmo para a produção de sistemas de Hilbert bidimensionais para matrizes não-determinísticas bidimensionais  suficientemente expressivas, bem como alguns procedimentos de simplificação que permitem reduzir consideravelmente o tamanho e a complexidade do sistema resultante. Para matrizes finitas, vale apontar, o procedimento resulta em sistemas finitos. Ao final, como estudo de caso, investigamos a lógica da inconsistência formal chamada mCi quanto à sua axiomatizabilidade por sistemas ao estilo de Hilbert. Demonstramos que não há sistemas de Hilbert finitos unidimensionais que capturem essa lógica, mas que ela habita uma relação de consequência bidimensional finitamente axiomatizável por um sistema de Hilbert bidimensional. A existência desse sistema segue diretamente do algoritmo de axiomatização proposto, em vista da semântica bidimensional 5-valorada não-deterministíca suficientemente expressiva que determina a relação de consequência bidimensional mencionada.

  • Mostrar Abstract
  • The present work proposes a two-dimensional Hilbert-style deductive  formalism (H-formalism) for B-consequence relations, a class of two-dimensional logics that generalize the usual (Tarskian, one-dimensional) notions of logic. We argue that the two-dimensional environment is appropriate to the study of bilateralism in logic, by allowing the primitive judgements of assertion and denial (or, as we prefer, the cognitive attitudes of acceptance and rejection) to act on independent but interacting dimensions in determining what-follows-from-what. In this perspective, our proposed formalism constitutes an inferential apparatus for reasoning over bilateralist judgments. After a thorough description of the inner workings of the proposed proof formalism, which is inspired by the one-dimensional symmetrical Hilbert-style systems, we provide a proof-search algorithm for finite analytic systems that runs in at most exponential time, in general, and in polynomial time when only rules having at most one formula in the succedent are present in the concerned system. We delve then into the area of two-dimensional non-deterministic semantics via matrix structures containing two sets of distinguished truth-values, one qualifying some truth-values as accepted and the other, as rejected, constituting a semantical path for bilateralism in the two-dimensional environment. We present an algorithm for producing analytic two-dimensional Hilbert-style systems for sufficient expressive two-dimensional matrices, as well as some streamlining procedures that allow to considerably reduce the size and complexity of the resulting calculi. For finite matrices, we should point out that the procedure results in finite systems. In the end, as a case study, we investigate the logic of formal inconsistency called mCi with respect to its axiomatizability in terms of Hilbert-style systems. We prove that there is no finite one-dimensional Hilbert-style axiomatization for this logic, but that it inhabits a two-dimensional consequence relation that is finitely axiomatizable by a finite two-dimensional Hilbert-style system. The existence of such system follows directly from the proposed axiomatization procedure, in view of the sufficiently expressive 5-valued non-deterministic bidimensional semantics available for that two-dimensional consequence relation.
6
  • CARLOS ANTÔNIO DE OLIVEIRA NETO
  • Hibersafe: Realizando Curadoria no StackOverflow para Bugs do Hibernate relacionados a Exceções

  • Orientador : ROBERTA DE SOUZA COELHO
  • MEMBROS DA BANCA :
  • EIJI ADACHI MEDEIROS BARBOSA
  • ROBERTA DE SOUZA COELHO
  • RODRIGO BONIFACIO DE ALMEIDA
  • UIRA KULESZA
  • Data: 29/03/2022

  • Mostrar Resumo
  • O Hibernate é um popular framework para Java usado para suportar a persistência de dados através do mapeamento objeto relacional. Este mapeamento é realizado através do uso de anotações Java. A forma como estas anotações são processadas, no entanto, não é fácil para entender pela a maioria dos desenvolvedores que usam este framework. Além disso, nos deparamos com ausência de documentação relacionada a comportamentos excepcionais  que ocorrem com o uso de anotações. Este trabalho busca oferecer meios para ajudar os desenvolvedores a entender melhor e corrigir bugs relacionados a exceções que podem surgir ao usar anotações do Hibernate. Na abordagem proposta, o conhecimento da multidão fornecido por StackOverflow - neste caso, perguntas e suas respostas sobre Hibernate - é utilizado por uma ferramenta, chamada Hibersafe, que visa ajudar os desenvolvedores a encontrar soluções para os problemas relacionados a exceções. A Hibersafe se baseia em um conjunto de heuristicas de busca que quando combinadas auxiliam no processo de curadoria das pertguntas disponíveis na base do StackOverflow.  Comparamos a ferramenta Hibersafe com a abordagens usuais (i.e., desenvolvestes usado o motor de busca Google, ou do StackOverflow). Nossa ferramenta se mostrou mais eficiente  nos cenários avaliados quando comparado com as abordagens usuais. Assim este estudo mostrou que a Hibersafe pode ser usado como espécie de curador para bugs relacionados a exceções do Hibernate.

     

     


  • Mostrar Abstract
  •  

    Hibernate is a popular object-relational mapping framework for Java used to support data persistence. It provides code annotations that are processed and the persistence process occurs. The way annotations are processed, however, is not easy to understand for most of software developers who use this framework. Also, its documentation appears to be incomplete with regard to exceptional behaviors that occur with the use of annotations. Therefore, this work seeks to provide ways to help developers to better understand and then fix exceptionalrelated bugs that may arise when using Hibernate annotations. In the proposed approach, the crowd knowledge provided by StackOverflow - in this case, questions and its answers about Hibernate - is used by a tool, called Hibersafe, which aims to help developers find better solutions to the exception-related bugs they face and identify the possible annotation-exception relationship that may have caused it. We compared the tool with the traditional approach using the Google search engine, the main source of information used by developers when an error occurs. Our tool was more efficient and accurate on tested scenarios when compared to Google. It showed that it could be used as a sort of curator for Hibernate exception-related bugs.

7
  • EMÍDIO DE PAIVA NETO
  • Criptografia de fluxo oportunística entre planos de dados programáveis por meio de sinalização em banda

  • Orientador : AUGUSTO JOSE VENANCIO NETO
  • MEMBROS DA BANCA :
  • AUGUSTO JOSE VENANCIO NETO
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • MICHELE NOGUEIRA LIMA
  • RAMON DOS REIS FONTES
  • ROGER KREUTZ IMMICH
  • Data: 04/05/2022

  • Mostrar Resumo
  • O paradigma de Redes Definidas por Software (SDN, do inglês Software-Defined Networking) tem sido amplamente empregado em diversos ecossistemas para gerenciar domínios administrativos heterogêneos, estender recursos programáveis para redes intra-domínio ou mesmo compor arquiteturas de rede nativas da nuvem. Por outro lado, embora possa oferecer suporte à capacidade das redes de próxima geração de se adaptarem a novos protocolos, SDN aumenta o escopo dos vetores de ataque à rede, resultando em vários problemas de segurança. Desse ponto de vista, as aplicações de controle executadas sob o controlador SDN são responsáveis por estabelecer conexões seguras entre os pares de nós subjacentes. A troca segura de chaves criptográficas, de forma que dois nós interconectados possam se comunicar com segurança em um canal público, representa um desafio bem conhecido em sistemas de criptografia simétrica. O Diffie–Hellman (DH) e o Advanced Encryption Standard (AES) são soluções amplamente adotadas para troca de chaves criptográficas e encriptação de tráfego entre nós em uma rede não confiável. No entanto, as implementações criptográficas tradicionais impõem altos custos computacionais e riscos de gerenciamento de chaves, o que pode resultar em problemas no plano de controle centralizado da rede SDN. Em vista disso, este trabalho explora o paradigma de Processadores de Pacotes Independentes de Protocolo de Programação (P4, do inglês Programming Protocol-independent Packet Processors) e propõe o dh-aes-p4, a primeira solução de troca de chaves DH com o AES adaptada para dispositivos de rede baseados em P4. Apesar de existirem casos similares na literatura, este trabalho apresenta-se como uma nova alternativa de baixo custo, granular (baseada em fluxos de rede) e transparente.


  • Mostrar Abstract
  • The Software-Defined Networking (SDN) paradigm has been widely used in diverse ecosystems as enabler for the management of heterogeneous administrative domains, extend programmable resources to intra-domain networks, or even compose cloud-native network architectures. On the other hand, while it can support the ability of next-generation networks to adapt to new protocols, SDN increases the scope of attack vectors to the network, resulting in several security issues. From this point of view, control applications running atop the SDN controller are responsible for establishing secure connections between the underlying node pairs. The secure exchange of cryptographic keys, so that two interconnected nodes can communicate securely over a public channel, represents a well-known challenge in symmetric cryptography systems field of research. The Diffie–Hellman (DH) and Advanced Encryption Standard (AES) stands to a widely adopted solution for exchanging cryptographic keys and encrypting traffic between nodes over untrusted networks. However, traditional cryptographic implementations impose high computational costs and key management risks, which can result to problems in the centralized control plane of the SDN network. This research sets out by exploring the Programming Protocol-independent Packet Processors (P4) paradigm, and proposes the dh-aes-p4 as the first solution for exchanging DH keys with AES adapted tailored to P4-based SDN devices. Although there exist similar cases in the literature, this work distinguishes itself as a new, low-cost, granular (based on network flows) and transparent alternative.

8
  • RAMON WILLIAMS SIQUEIRA FONSECA
  • ELICITAÇÃO COLABORATIVA DE REQUISITOS: UM MÉTODO COM FOCO NO ENGAJAMENTO

  • Orientador : MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • MEMBROS DA BANCA :
  • ISABEL DILLMANN NUNES
  • LYRENE FERNANDES DA SILVA
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • MARILIA ARANHA FREIRE
  • Data: 05/05/2022

  • Mostrar Resumo
  •  

    A Engenharia de Requisitos é uma etapa fundamental e importante para alcançar o sucesso de um projeto, pois, além de fornecer meios de atingir metas impostas no projeto, ainda trabalha sua manutenção ao longo do tempo. A Engenharia de Requisitos trabalha em cima do entendimento e da percepção de contextos e particularidades únicas para interpretar as ações ao qual o problema está inserido. Por essa razão, a fase da elicitação de requisitos não pode ser vista apenas como um problema de dimensão tecnológica, uma vez que nesta atividade o contexto social é mais crítico do que na fase de especificação, projeto e programação. Nesse sentido, a comunicação entra como um fator importante a ser levado em consideração durante todo esse processo. Processos colaborativos objetivam tornar a comunicação mais eficiente, entretanto, estudos apontam limitações e dificuldades recorrentes em manter a comunicação clara, sem ambiguidades entre os integrantes da equipe durante o processo de ER. Considerando este problema é possível perceber que a partir da literatura a falta de engajamento dos envolvidos no processo de elicitação de requisitos afeta a comunicação e colaboração da equipe. Além disso, é observado que a Engenharia de Requisitos possui limitações em ferramentas e mecanismos para medir e controlar o nível de engajamento da equipe de software. Uma vez que o engajamento dos envolvidos não consegue ser gerenciado, ele não consegue ser medido. A partir dessa demanda, o objetivo deste trabalho é auxiliar a incorporar o engajamento dos envolvidos no processo de elicitação de requisitos colaborativos através de recursos presentes em ferramentas de gerenciamento de projetos. Para isso, um método de engajamento foi criado a fim de aumentar os níveis de motivação das partes interessadas durante a elicitação de requisitos. O método foi aplicado em duas fases em turmas do curso do Bacharelado em Tecnologia da Informação da Universidade Federal do Rio Grande do Norte, como resultado podemos observar que o método de engajamento auxiliou a orientar a discussão da elicitação de requisitos, otimizou a comunicação da equipe e a maioria dos alunos se sentiram engajados durante o processo de elicitação.

     


  • Mostrar Abstract
  • Requirements Engineering is a fundamental and important step to achieve the success of a project, because, in addition to providing means to achieve goals imposed in the project, it also works on its maintenance over time. Requirements Engineering works on the understanding and perception of unique contexts and particularities to interpret the actions to which the problem is inserted. For this reason, the requirements elicitation phase cannot be seen only as a technological problem, since in this activity the social context is more critical than in the specification, design and programming phase. In this sense, communication comes in as an important factor to be taken into account throughout this process. Collaborative processes aim to make communication more efficient, however, studies point to limitations and recurring difficulties in maintaining clear, unambiguous communication between team members during the RE process. Considering this problem, it is possible to perceive from the literature that the lack of engagement of those involved in the requirements elicitation process affects team communication and collaboration. In addition, it is observed that Requirements Engineering has limitations in tools and mechanisms to measure and control the level of engagement of the software team. Since stakeholder engagement cannot be managed, it cannot be measured. From this demand, the objective of this work is to help incorporate the engagement of those involved in the collaborative requirements elicitation process through resources present in project management tools. For this, an engagement method was created in order to increase stakeholder motivation levels during requirements elicitation. The method was applied in two phases in classes of the Bachelor's Degree in Information Technology at the Universidade Federal do Rio Grande do Norte, as a result we can observe that the engagement method helped to guide the discussion of requirements elicitation, optimized the team's communication and most students felt engaged during the elicitation process.

9
  • PAULO LEONARDO SOUZA BRIZOLARA
  • Heterogeneidade em Sistemas de Descoberta: Survey e Uma Solução Descentralizada para Descoberta Integrada

  • Orientador : LEONARDO CUNHA DE MIRANDA
  • MEMBROS DA BANCA :
  • EVERTON RANIELLY DE SOUSA CAVALCANTE
  • JULIO CESAR DOS REIS
  • LEONARDO CUNHA DE MIRANDA
  • MONICA MAGALHAES PEREIRA
  • Data: 30/05/2022

  • Mostrar Resumo
  • Em sistemas distribuídos, o primeiro passo para estabelecer uma comunicação com um outro dispositivo é saber o seu endereço, isto é, localizá-lo. Para localizar serviços ou recursos de forma automatizada, sistemas de descoberta tem sido aplicados a ambientes e contextos de uso diversos, desde redes de sensores sem fio e sistemas peer-to-peer, até clusters de alto processamento e sistemas em nuvem. A grande diversidade entre os contextos de uso e necessidades das aplicações, tem levado ao desenvolvimento de protocolos de descoberta especializados, frequentemente incompatíveis entre si. Essa incompatibilidade impede a descoberta através de ambientes ou protocolos heterogêneos, restringindo os serviços acessíveis a determinado dispositivo. Para lidar com essas limitações, é preciso, portanto, prover soluções de descoberta que integrem ambientes e protocolos de descoberta heterogêneos. Isso requer, por sua vez, entender: em quais aspectos variam esses ambientes e protocolos e também quais os aspectos existem em comum entre eles. Para solucionar essa questão, este trabalho apresenta uma revisão de estudos secundários da literatura que tratam da descoberta de serviços e descoberta de recursos através de diferentes ambientes, i.e. um estudo terciário sobre o tema. Com base nesta revisão, foi desenvolvida uma solução para descoberta integrada de serviços através de ambientes e protocolos de descoberta heterogêneos. Uma prova de conceito dessa solução foi implementada, junto com dois mecanismos de descoberta: um voltado para a descoberta em redes locais e outro para descoberta descentralizada através da Internet. Para avaliar a viabilidade da solução e analisar como esses mecanismos interagem entre si, foi realizado um experimento controlado, em um ambiente de redes virtuais. Embora limitações e desafios ainda permaneçam, este trabalho pode contribuir para o entendimento dos sistemas de descoberta, no que tem de comum e nos seus pontos de variação, e avançar na direção de um “descoberta universal” de serviços, que permita a construção de novos gêneros de aplicações.


  • Mostrar Abstract
  • In distributed systems, the first step to establish communication with another device is to know its address, that is, to locate it. To locate services or resources automatically, discovery systems have been applied to diverse environments and usage contexts, from wireless sensor networks (WSNs) and peer-to-peer systems, to high processing clusters and cloud systems. The great diversity among usage contexts and application needs has led to the development of specialized discovery protocols, often incompatible with each other. This incompatibility prevents discovery across heterogeneous environments or protocols, restricting the services accessible to a given device. Therefore, to address these limitations, it is necessary to provide discovery solutions that integrate heterogeneous discovery environments and protocols. This in turn requires understanding: in which aspects these environments and protocols vary, and also what aspects they have in common. To address this issue, this paper presents a review of secondary studies from the literature which address service discovery and resource discovery across different environments, i.e. a tertiary study on the topic. Based on this review, a solution was developed to integrate the service discovery across heterogeneous discovery environments and protocols. A proof-of-concept of this solution was implemented, along with two discovery mechanisms: one to local service discovery and the other to decentralized discovery over the Internet. To evaluate the feasibility of the solution and analyze how these mechanisms interact with each other, a controlled experiment was conducted in a virtual network environment. Despite limitations and challenges that still remain, this research can contribute to the understanding of discovery systems, in what they have in common and in their points of variation, and move towards the “universal discovery” of services, which may allows the construction of new kinds of applications.

10
  • EDIR LUCAS DA SILVA ICETY BRAGA
  • Um Catálogo sobre Requisitos de Colaboração

  • Orientador : LYRENE FERNANDES DA SILVA
  • MEMBROS DA BANCA :
  • LYRENE FERNANDES DA SILVA
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • ISABEL DILLMANN NUNES
  • MARIA LENCASTRE PINHEIRO DE MENEZES E CRUZ
  • Data: 13/07/2022

  • Mostrar Resumo
  • Cada vez mais processos de negócio são apoiados por ferramentas de software e muitos deles necessitam de serviços que facilitem a colaboração entre as pessoas envolvidas. Colaboração é um termo amplo, um tanto subjetivo, definido pela participação e contribuição de diversas pessoas e sugerindo comprometimento delas para executar processos. Assim, a colaboração (colaborativo) pode ser entendida como um atributo de qualidade (ou RNF), que pode ser interpretado, aplicado e implementado de formas diferentes por tais ferramentas colaborativas. No entanto, quais são os requisitos de software para apoiar processos colaborativos? Para ajudar engenheiros de requisitos na elicitação e validação de requisitos de colaboração, esta dissertação tem o objetivo de desenvolver um catálogo sobre aspectos de colaboração (e seus requisitos). Esse catálogo é uma fonte de informação que organiza e mapeia 43 itens sobre colaboração. A construção do catálogo foi baseada em trabalhos da literatura que abordam aspectos de colaboração a partir de perspectivas diferentes. O catálogo foi avaliado por meio de um questionário, no qual analisou-se a utilidade e o nível de compreensão de seus itens.


  • Mostrar Abstract
  • To be defined

11
  • JAKELINE BANDEIRA DE OLIVEIRA
  • ESTUDO SOBRE O SUPORTE TECNOLÓGICO PARA EDIÇÃO DE ÁUDIO NA PRODUÇÃO AUDIOVISUAL PARA MÍDIAS SOCIAIS DIGITAIS POR NÃO ESPECIALISTAS

  • Orientador : FERNANDO MARQUES FIGUEIRA FILHO
  • MEMBROS DA BANCA :
  • BRUNO SANTANA DA SILVA
  • FERNANDO MARQUES FIGUEIRA FILHO
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • TICIANNE DE GOIS RIBEIRO DARIN
  • Data: 26/07/2022

  • Mostrar Resumo
  • Uma maior disponibilidade de dispositivos digitais, como smartphones, e conexão com a internet associada à necessidade humana de comunicação têm favorecido um aumento significativo no consumo e na produção de conteúdos audiovisuais na/para as mídias sociais digitais. Se nas mídias tradicionais a produção de conteúdo estava sob responsabilidade de profissionais especialistas, nas mídias sociais digitais a atuação de produtores não especialistas (pessoas sem formação e experiência específica) passou a ganhar espaço. Entretanto, a atuação deste novo público no processo de produção audiovisual ainda é pouco conhecida. Assim, este trabalho tem por objetivos (1) investigar o processo de produção de conteúdos audiovisuais por produtores não especialistas para seus próprios canais no YouTube e Instagram; e (2) avaliar se e como a usabilidade do software de edição de áudio Audacity pode estar atrapalhando o processo de produção audiovisual por não especialistas. Três estudos foram realizados para atingir esses objetivos. O Estudo I foi uma entrevista semiestruturada com produtores não especialistas sobre seus processos de produção de conteúdos para seus canais no YouTube e no Instagram. O Estudo II foi um questionário (survey) sobre as demandas de produtores de conteúdo para mídias sociais digitais, em especial aquelas relacionadas com dificuldades na edição de vídeos e áudios. O Estudo III avaliou a usabilidade do software Audacity com um teste de usabilidade e o questionário SUS a partir da observação de tarefas de edição de volume, corte, ruído e distorção em áudio. Como principais resultados, identificou-se que produtores não especialistas costumam se envolver em várias atividades do processo de produção de conteúdo para as mídias sociais digitais, em particular na edição do foi gravado. Alguns deles, no entanto, relaram evitar editar o conteúdo gravado. Dentre as várias demandas relatadas, produtores de conteúdo afirmaram enfrentar mais dificuldades para editar áudios do que vídeos. Ao avaliar a interface do Audacity, identificou-se que problemas de usabilidade podem sim estar relacionados com as dificuldades de edição relatadas pelos produtores de conteúdo. Deste modo, ficou claro que existem oportunidades de melhoria na interface do Audacity para apoiar adequadamente produtores de conteúdo não especialistas para as mídias sociais digitais.


  • Mostrar Abstract
  • A greater availability of digital devices, such as smartphones, and of internet connection associated with human need for communication have favored a significant increase in consumption and production of audiovisual content in/for digital social media. If in traditional media the content production was under the responsibility of specialist professionals, in digital social media the performance of non-specialist producers (people without specific training and experience) began to gain space. However, this new audience performance in the audiovisual production process is still little known. Thus, this work aims to (1) investigate the process of production of audiovisual content by non-specialist producers for their own channels on YouTube and Instagram; and (2) to assess whether and how usability of the Audacity audio editing software may be hindering the audiovisual production process by non-experts. Three studies were carried out to achieve these goals. Study I was a semi-structured interview with non-specialist producers about their content production processes for their YouTube and Instagram channels. Study II was a questionnaire (survey) on the demands of content producers for digital social media, particularly those related to difficulties in editing videos and audios. Study III evaluated usability of the Audacity software with a usability test and the SUS questionnaire from the observation of volume, cutting, noise and distortion editing tasks in audio. As main results, it was identified that non-specialist producers tend to get involved in various activities of the content production process for digital social media, in particular in the edition of what was recorded. Some of them, however, reported avoiding editing recorded content. Among the various demands reported, content producers claimed to face more difficulties in editing audio than videos. When evaluating Audacity's interface, it was identified that usability problems may indeed be related to editing difficulties reported by content producers. Thus, it became clear that there are opportunities for improvement in the Audacity interface to adequately support non-specialist content producers for digital social media.

12
  • LUCIANO ALEXANDRE DE FARIAS SILVA
  • GERAÇÃO AUTOMÁTICA DE HARDWARE CONCORRENTE VERIFICADO

  • Orientador : MARCEL VINICIUS MEDEIROS OLIVEIRA
  • MEMBROS DA BANCA :
  • JULIANO MANABU LYODA
  • MARCEL VINICIUS MEDEIROS OLIVEIRA
  • MONICA MAGALHAES PEREIRA
  • Data: 26/07/2022

  • Mostrar Resumo
  • A complexidade de desenvolvimento e análise é inerente a sistemas de modo geral, principalmente a sistemas concorrentes. Quando trabalhamos com sistemas críticos isso se torna bem mais evidente, pois uma inconsistência geralmente está associado a um alto custo. Assim, o quanto antes conseguimos identificar uma inconsistência no projeto de um sistema e removê-la, menor será seu custo. Por este motivo, é comum a utilização das mais variadas estratégias para diminuir a dificuldade e os problemas enfrentados neste processo. Uma dessas estratégias é a utilização de métodos formais, que podem utilizar álgebra de processos para especificação e análise de sistemas concorrentes, melhorando a compreensão do projeto e  possibilitando a identificação de possíveis inconsistências ainda nas etapas iniciais do projeto,  garantindo a precisão e correção do sistema especificado. Este trabalho apresenta uma ferramenta para tradução automática dos principais operadores da álgebra de processo csp para a linguagem de descrição de hardware vhdl. csp é uma linguagem que nos permite realizar uma descrição formal de um sistema concorrente. vhdl é uma linguagem de descrição de hardware que pode ser compilado em uma placa de fpga. Nossa ferramenta para geração automática de harware é validada por um estudo de caso de um sistema inteligente para controle de elevadores. Apresentamos sua especificação formal em csp e em seguida sua tradução para um código vhdl, gerado pela nossa ferramenta, o qual sintetizamos em uma placa de fpga.


  • Mostrar Abstract
  • The complexity of development and analysis is inherent to systems in general, especially to concurrent systems. When we work with critical systems this becomes much more evident, as an inconsistency is usually associated with a high cost. Thus, the sooner we can identify an inconsistency in the design of a system and remove it, the lower its cost. For this reason, it is common to use the most varied strategies to reduce the difficulty and problems faced in this process. One of these strategies is the use of formal methods, which can use process algebra to specify and analyze competing systems, improving the understanding of the project and enabling the identification of possible inconsistencies even in the initial stages of the project, ensuring the accuracy and correction of the system. specified. This work presents a tool for automatic translation of the main operators of the Communicating Sequential Processes (csp) process algebra into the hardware description language vhsic hardware description language (vhdl). csp is a language that allows us to perform a formal description of a concurrent system. vhdl is a hardware description language that can be compiled on a Field Programmable Gate Arrays (FPGA) board. Our automatic hardware generation tool is validated by a case study of an intelligent elevator control system. We present its formal specification in csp and then its translation into a vhdl.

13
  • LAVINIA MEDEIROS MIRANDA
  • LLVM-ACT: Uma ferramenta baseada em profiling para seleção de técnica de computação aproximada

  • Orientador : MONICA MAGALHAES PEREIRA
  • MEMBROS DA BANCA :
  • IVAN SARAIVA SILVA
  • JORGIANO MARCIO BRUNO VIDAL
  • MARCIO EDUARDO KREUTZ
  • MONICA MAGALHAES PEREIRA
  • SILVIO ROBERTO FERNANDES DE ARAUJO
  • Data: 29/07/2022

  • Mostrar Resumo
  • Computação Aproximada é atualmente um paradigma em ascensão que busca substituir um pouco de acurácia de dados por aspectos como performance e eficiência energética. Em nível computacional de software, existem ferramentas dentro desse escopo que aplicam algumas técnicas de computação aproximada. No entanto, essas ferramentas são limitadas de forma que abrangem somente algum escopo específico, aplicam apenas uma das técnicas conhecidas e/ou precisam de anotações manuais nas aplicações para funcionarem. O estado da arte atual ainda possui questionamentos, como a existência ou não de uma relação entre as características da aplicação estudada e a escolha da técnica utilizada para sua exploração; permanece em aberto também qual seria a técnica mais adequada a cada determinado contexto. Dessa forma, essa dissertação propõe a implementação de uma ferramenta que, de acordo com as características das aplicações, escolha a técnica de computação aproximada mais adequada a ser aplicada naquele contexto. A ferramenta desenvolvida utiliza a infraestrutura de compilação do LLVM, onde cada etapa é implementada na forma de um LLVM Pass de análise ou transformação de código. Além do Profiler, foram implementadas três técnicas de computação aproximada e os resultados obtidos mostram que a técnica escolhida pela ferramenta apresenta uma relação equilibrada de custo-benefício se forem considerados os parâmetros de taxas de erro e aceleração.


  • Mostrar Abstract
  • Approximate Computing is currently an emerging paradigm that seeks to replace some data accuracy with aspects such as performance and energy efficiency. At the software level, there are tools within this scope that apply some approximate computation techniques. However, these tools are limited in covering only some specific scope, applying only one of the techniques, and/or needing manual annotations on applications. The current state of the art still has open questions, such as wether application features influentiates the technique's choice; what would be the most appropriate technique for each particular context. Thus, this dissertation proposes the implementation of a tool that, according to the application profiling, chooses the most appropriate approximate computing technique to be applied. The tool uses the LLVM compilation infrastructure, where each step is implemented in the form of an LLVM Pass of code analysis or transformation. In addition to the Profiler, it was also implemented three approximate computing techniques and the experimental results show the technique chosen by the tool presents a balance between error rate and speedup.

14
  • MARCELO MAGALHÃES DRUMMOND DIAS
  • Ética nos Sistemas MultiAgente Autônomos

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • MEMBROS DA BANCA :
  • ANDRÉ CARLOS PONCE DE LEON FERREIRA DE CARVALHO
  • ANNE MAGALY DE PAULA CANUTO
  • BRUNO MOTTA DE CARVALHO
  • FLAVIUS DA LUZ E GORGONIO
  • Data: 09/09/2022

  • Mostrar Resumo
  • No atual momento da humanidade trabalhar para ter ética em Sistemas Multiagente
    Autônomos tornou-se obrigatório dada a evolução dessa tecnologia nos últimos anos. Os
    humanos enganam-se desde que a espécie começou, nos levando a perguntar se isso já é
    replicado pelos sistemas computacionais, se é possível detectar a mentira da máquina, se elas
    cometem fraude e como identificar essa atitude.
    Essa pesquisa foca na criação do agente Severus com o objetivo de utilizar a Inteligência
    Artificial (IA) para fiscalizar a IA. Um agente que faça em sua programação uma grande
    cooperação e colaboração da ética considerada em ciências exatas com todas as abordagens
    das ciências humanas-sociais e que tenha na implantação e implementação uma evidente
    abordagem bottom-up. Um trabalho pensado para verificar o nível ideal de autonomia dos
    agentes nos sistemas observando essencialmente o respeito aos direitos humanos, o bem
    público como primordial e a utilização da inteligência compartilhada a serviço do
    aperfeiçoamento da boa convivência. Para atingir esse objetivo, os agentes trabalham sob o
    comando humano, destacadamente tendo no Engenheiro de Requisitos o responsável pelo
    controle ético dos sistemas na sua grande função de negociar o equilíbrio possível com os
    stakeholders.
    Falando numa linguagem simples, em direção aqueles que trabalham, vivem e amam em
    sociedades das mais diversas, o primordial da ética nessa nova era pós-humana é considerar
    que a IA será pilar fundamental para definir se a humanidade terá futuro. Essa pesquisa
    conclui que para dar certo e termos boa ética em Sistemas Multiagente, devemos ter
    participação ativa em todas as decisões, aprender e respeitar a psicologia da nova diversidade
    em equipes de humanos e máquinas e contribuir para a formação de líderes habilidosos que
    conduzam uma IA de fato cooperativa e trabalhando a serviço da humanidade. Essa
    conclusão será sempre dinâmica, pois os agentes apresentam grandes diferenças de
    comportamento nos diversos ambientes, sendo necessário um efetivo trabalho do Engenheiro
    de Requisitos ao adequar a matriz de resultados das equipes para uma boa opção na estratégia
    dominante evitando as ameaças que essa nova era de engenhos tecnológicos representa.


  • Mostrar Abstract
  • In the current moment of humanity, working to have ethics in Autonomous Multi-Agent
    Systems has become mandatory given the evolution of this technology in recent years.
    Humans have been deceiving themselves since the species began, leading us to ask if this is
    already replicated by computer systems, if it is possible to detect the machine's lie, if they
    commit deception and how to identify this attitude.
    This research focuses on the creation of the Severus agent with the aim of using Artificial
    Intelligence (AI) to supervise AI. An agent that makes in its programming a great cooperation
    and collaboration of the ethics considered in exact sciences with all the approaches of the
    humanities-social sciences and that has in the implantation and implementation an evident
    bottom-up approach. A work designed to adjust the level of autonomy of agents in the system,
    essentially observing respect for human rights, the public good as paramount and the use of
    shared intelligence in the service of improving good coexistence. In this sense, the agents
    work under human command, notably having the Requirements Engineer responsible for the
    ethical control of the systems in his great function of negotiating the possible balance with
    the stakeholders.
    Speaking in simple language, towards those who work, live and love in the most diverse
    societies, the primordial of ethics in this new post-human era is to consider that AI will be a
    fundamental pillar to define if humanity will have a future. This research concludes that to
    succeed and to have good ethics in Multi-Agent Systems, we must have an active
    participation in all decisions, learn and respect the psychology of the new diversity in teams
    of humans and machines and contribute to the formation of skilled leaders who lead an AI
    indeed cooperative and working in the service of humanity. This conclusion will always be
    dynamic, as the agents present great differences in behavior in the different environments,
    being necessary an effective work of the Requirements Engineer to adapt the matrix of results
    of the teams for a good option in the dominant strategy avoiding the threats that this new era
    of technological gadgets represents.

15
  • JAINE RANNOW BUDKE
  • Face Biometrics for Differentiating Typical Development and Autism Spectrum Disorder: a methodology for collecting and evaluating
    a dataset

  • Orientador : MARJORY CRISTIANY DA COSTA ABREU
  • MEMBROS DA BANCA :
  • BRUNO MOTTA DE CARVALHO
  • MARJORY CRISTIANY DA COSTA ABREU
  • PLACIDO ANTONIO DE SOUZA NETO
  • Data: 16/09/2022

  • Mostrar Resumo
  • Autism spectrum disorder (ASD) is a neuro-developmental disability marked by deficits in communicating and interacting with others. The standard
    protocol for diagnosis is based on fulfillment of a descriptive criteria, which
    does not establish precise measures and influence the late diagnosis. Thus,
    new diagnostic approaches should be explored in order to better standardise
    practices. The best case scenario would be to have a reliable automated
    system that indicates the diagnosis with an acceptable level of assurance.
    At the moment, there are no publicly available representative open-source
    datasets with the main aim of this diagnosis. This work proposes a new methodology for collecting a Face Biometrics dataset with the aim to investigate the differences in facial expressions of ASD and Typical Developmental (TD) people. Thus, a new dataset of facial images was collected from YouTube videos, and computer vision-based techniques were used to extract image frames and filter the dataset. We have also performed initial experiments using classical supervised learning models as well as ensembles and managed to archive promising results.


  • Mostrar Abstract
  • Autism spectrum disorder (ASD) is a neuro-developmental disability marked by deficits in communicating and interacting with others. The standard
    protocol for diagnosis is based on fulfillment of a descriptive criteria, which
    does not establish precise measures and influence the late diagnosis. Thus,
    new diagnostic approaches should be explored in order to better standardise
    practices. The best case scenario would be to have a reliable automated
    system that indicates the diagnosis with an acceptable level of assurance.
    At the moment, there are no publicly available representative open-source
    datasets with the main aim of this diagnosis. This work proposes a new methodology for collecting a Face Biometrics dataset with the aim to investigate the differences in facial expressions of ASD and Typical Developmental (TD) people. Thus, a new dataset of facial images was collected from YouTube videos, and computer vision-based techniques were used to extract image frames and filter the dataset. We have also performed initial experiments using classical supervised learning models as well as ensembles and managed to archive promising results.

16
  • ELTONI ALVES GUIMARÃES
  • Um Estudo para Identificar e Classificar Ambiguidades em Historias de Usuário usando Aprendizagem de Máquina

  • Orientador : MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • MEMBROS DA BANCA :
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • IVANOVITCH MEDEIROS DANTAS DA SILVA
  • RICARDO ARGENTON RAMOS
  • Data: 29/09/2022

  • Mostrar Resumo
  • Ambiguidade na escrita de requisitos é um dos defeitos mais encontrados nos documentos de requisitos. Existe uma variedade de conceitos sobre o que é ambiguidade em requisitos e para identificar os tipos de ambiguidade deve-se entender melhor cada conceito. A ambiguidade pode comprometer a qualidade das Histórias de Usuário e pode estar presente em requisitos escritos em linguagem natural. Na literatura, há poucos estudos que investigam o potencial dos algoritmos de Aprendizagem de Máquina para classificar ambiguidade em Histórias de Usuários. Esta dissertação tem como objetivo identificar e classificar ambiguidade em Histórias de Usuários através do uso de algoritmos de Aprendizado de Máquina. Dessa forma, foi elaborado um formulário baseado da literatura para ajudar na identificação da ambiguidades nas Histórias de Usuário e foi usada uma abordagem de Aprendizagem de Máquina utilizando dois algoritmos: (i) Support Vector Machine ; (ii) Random Forest. Para o estudo foram utilizadas 1.002 Histórias de Usuário e aplicadas técnicas (oversampling e undersampling) para balancear os dados desbalanceados, pois notou-se o desbalanceamento dos dados. Como resultados o tipo de ambiguidade mais identificado nas Histórias de Usuário foi adjetivos e advérbios ambíguos e o algoritmo que obteve o modelo de melhor desempenho ao classificar as Histórias de Usuário foi Random Forest.


  • Mostrar Abstract
  • Ambiguity in requirements writing is one of the most common defects found in requirements documents. There are a variety of concepts about what is ambiguity in requirements and to identify ambiguity one must better understand each concept. Ambiguity can compromise the quality of User Stories and can be present in requirements written in natural language. In the literature, there are few studies that investigate the potential of Machine Learning algorithms to classify ambiguity in User Stories. This dissertation aims to propose an approach to identify and classify ambiguity in User Stories through the use of Machine Learning algorithms. Thus, a checklist was developed to help in the identification of ambiguities in User Stories and a Machine Learning approach will be used using two algorithms: (i) Support Vector Machine; (ii) Random Forest. Each model generated by the algorithm will be evaluated and compared.


17
  • JOÃO VICTOR LOPES DA SILVA
  • Abordagem Orientada a Aspectos para o Monitoramento de Plataformas para Cidades
    Inteligentes

  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • THAIS VASCONCELOS BATISTA
  • EVERTON RANIELLY DE SOUSA CAVALCANTE
  • FREDERICO ARAUJO DA SILVA LOPES
  • ROSSANA MARIA DE CASTRO ANDRADE
  • Data: 26/10/2022

  • Mostrar Resumo
  • As plataformas para desenvolvimento de aplicações de cidades inteligentes são responsáveis por fornecer diversos serviços para facilitar o desenvolvimento de aplicações. Tipicamente tais plataformas gerenciam uma diversidade de aplicações, tratam com grande volume de dados e atendem a um expressivo número de usuários que geram um alto volume de requisições. A grande quantidade de requisições muitas vezes ocasiona sobrecarga na plataforma, degradando a qualidade do serviço provida para os usuários. Além disso, como plataformas de cidades inteligentes processam solicitações de operações em grandes volumes de dados geográficos, é importante monitorar os bancos de dados para verificar se há alguma limitação para o processamento de grandes quantidades de dados em um tempo aceitável. Portanto, nesse contexto, é necessário monitorar a infraestrutura computacional subjacente sobre a qual plataformas para cidades inteligentes e aplicações estão implantadas, bem como monitorar as operações referentes aos acessos aos dados geográficos armazenados nos bancos de dados usados pelas plataformas. Visando tratar esse problema, o objetivo deste trabalho é propor e implementar uma estratégia não invasiva para possibilitar o monitoramento de plataformas para cidades inteligentes, incluindo o monitoramento da infraestrutura subjacente, bem como as operações direcionadas aos bancos de dados. A estratégia proposta apoia-se no paradigma de programação orientada a aspectos para que seja possível monitorar a infraestrutura computacional sem a necessidade de intervir sobre a implementação da plataforma ou gerar acoplamento com relação ao monitoramento. Este trabalho também apresenta a implementação da estratégia e sua instância no monitoramento da plataforma Smart Geo Layers (SGeoL), bem como uma avaliação da estratégia de monitoramento proposta.



  • Mostrar Abstract
  • Platforms for developing smart cities applications are responsible for providing various services to facilitate application development. Typically, such platforms manage a variety of applications, handle a large volume of data and serve a significant number of users that generate a high volume of requests. The large amount of requests often causes overload on the platform, degrading the quality of service provided to users. Also, as smart city platforms process requests for operations on large volumes of geographic data, it is important to monitor the databases to see if there are any limitations to processing large amounts of data in an acceptable time. Therefore, in this context, it is necessary to monitor the underlying computational infrastructure on which platforms for smart cities and applications are deployed, as well as monitor operations regarding access to geographic data stored in the databases used by the platforms. Aiming to address this problem, the objective of this work is to propose and implement a non-invasive strategy to enable the monitoring of platforms for smart cities, including the monitoring of the underlying infrastructure, as well as the operations directed to the databases. The proposed strategy is based on the aspect-oriented programming paradigm so that it is possible to monitor the computational infrastructure without the need to intervene on the implementation of the platform or generate coupling with respect to monitoring. This work also presents the implementation of the strategy and its instance in the monitoring of the Smart Geo Layers (SGeoL) platform, as well as an evaluation of the proposed monitoring strategy.

18
  • GABRIEL ARAÚJO DE SOUZA
  • Usando técnicas de federated learning para aprimorar modelos de inteligência artificial no contexto das Instituições Públicas Brasileiras

  • Orientador : NELIO ALESSANDRO AZEVEDO CACHO
  • MEMBROS DA BANCA :
  • ALLAN DE MEDEIROS MARTINS
  • DANIEL SABINO AMORIM DE ARAUJO
  • EVERTON RANIELLY DE SOUSA CAVALCANTE
  • NELIO ALESSANDRO AZEVEDO CACHO
  • PEDRO MESQUITA MOURA
  • Data: 20/12/2022

  • Mostrar Resumo
  • O uso de modelos de inteligência artificial tem se tornado frequente em diversas áreas do conhecimento para resolver diferentes problemas eficientemente. Diante disso, diversas Instituições Públicas Brasileiras têm investido em soluções de IA para melhorar a qualidade e otimizar seus serviços. Contudo, essas instituições, principalmente as de segurança, utilizam dados muito sensíveis nessas soluções. Dessa forma, seu uso acaba sendo muito burocrático, principalmente para respeitar todas as exigências da Lei Geral de Proteção de Dados. Além disso, cada instituição explora um cenário limitado de exemplos que torna os modelos de IA enviesados. O compartilhamento de dados entre instituições poderia proporcionar a criação de datasets mais generalistas com uma melhor capacidade de criar modelos mais robustos. No entanto, devido a natureza dos dados, esse tipo de ação é em muitos casos inviável. Diante desse cenário, federated learning tem ganhado espaço na literatura recente como uma forma de possibilitar o compartilhamento de modelos de IA de forma segura. Nessa técnica, ao invés de compartilhar dados, apenas os modelos já treinados são agregados em um servidor para gerar um novo modelo. Com isso é possível tranferir o conhecimento de vários modelos para criar uma versão aprimorada deles. Diante disso, este trabalho propõe o uso do federated learning para criar um ambiente seguro para o compartilhamento de modelos de IA entre as Intituições Públicas Brasileiras. Além disso, o trabalho também propõe o experimento de diferentes técnicas presentes na literatura para identificar os melhores algoritmos de federated para se utilizar no cenário estudado.


  • Mostrar Abstract
  • The use of artificial intelligence models has become frequent in several areas of knowledge to resolve different problems efficiently. Due to this, many Brazilian Public Institutions have invested in AI solutions to improve and optimize their services. However, these institutions, mainly public safety organizations, use sensitive privacy data in their solutions. Thus, the use of this data is bureaucratic, primarily to respect all General Data Protection Law requirements. Furthermore, each institution explores a limited examples scenario which makes the AI models biased. The data sharing between institutions could provide the creation of general datasets with a better capacity to create more robust models. However, due to the nature of the data, this type of action is, in many cases, unfeasible. Thus, federated learning has gained space in the recent literature to enable the sharing of AI models safely. In this technique, instead of sharing data, only the models already trained are aggregated on a server to provide a new model. With this, it is possible to transfer knowledge from various models to create an improved version of them. Therefore, this work proposes using federated learning to create a safe environment for sharing AI models among Brazilian Public Institutions. In addition, the work proposes the experiment with different techniques present in the literature to identify the best federated algorithm used in this studied scenario.

19
  • SAMUEL LUCAS DE MOURA FERINO
  • Unveiling the Teaching Methods Adopted in DevOps Courses

  • Orientador : UIRA KULESZA
  • MEMBROS DA BANCA :
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • UIRA KULESZA
  • VINICIUS CARDOSO GARCIA
  • Data: 22/12/2022

  • Mostrar Resumo
  • DevOps emerges as a set of practices that deal with conflicts between the development and operation teams. It aims to ensure the development and delivery of high-quality software releases. Knowledge of these practices is essential to software engineers in the industry. In this context, DevOps education assumes the vital task of preparing new professionals in these practices using appropriate teaching methods. Existing research work shows that teaching methods are helpful to educators in developing and improving their DevOps courses. However, there is a reduced number of studies investigating teaching methods in DevOps Education. In this dissertation, we perform two empirical studies to understand the teaching methods used in DevOps Education. In the first study, we investigate the teaching methods reported in the literature. In the second study, we analyze teaching methods from interviews with educators from existing DevOps courses. Our main aim is to help DevOps educators to improve the selection of teaching methods for their courses. As a result of the studies, we present a comprehensive set of 23 teaching methods, including traditional teaching methods such as \textsf{lectures} and unusual teaching methods such as \textsf{studio-based learning}. \textsf{Project-based learning} and \textsf{collaborative learning} stand as the most recurrent in both studies. Many of these teaching methods require strong interaction between educators and students. We also present association links between the reported teaching methods and DevOps teaching challenges. Those association links can help educators to select teaching methods based on specific challenges to be addressed. 


  • Mostrar Abstract
  • DevOps consiste em um conjunto de práticas que ajudam a lidar com conflitos entre as equipes de desenvolvimento e operação e busca garantir liberações de versões de software que sejam rápidas e confiáveis. O entendimento dessas práticas é essencial para a atuação de engenheiros de software na indústria. Neste sentido, a educação DevOps assume a tarefa vital de preparar os novos profissionais, através do ensino dessas práticas utilizando métodos de ensino adequados. O trabalho de pesquisa existente mostra que os métodos de ensino são úteis para os educadores desenvolverem e melhorarem seus cursos de DevOps. No entanto, há um número insuficiente de estudos investigando métodos de ensino na educação em DevOps. Nesta dissertação, realizamos dois estudos empíricos buscando compreender os métodos de ensino utilizados na educação em DevOps. No primeiro estudo, investigamos os métodos de ensino disponíveis na literatura. No segundo estudo, analisamos os métodos de ensino aplicados a partir de entrevistas com educadores do DevOps de cursos DevOps existentes. O objetivo do nosso trabalho é orientar novos educadores de DevOps a alcançar uma melhor experiência de ensino. Como resultado dos estudos, apresentamos um conjunto abrangente de 23 métodos de ensino, incluindo métodos de ensino tradicionais (aulas formais) bem como métodos de ensino menos usuais, tais como, aprendizado baseado em estúdio. Aprendizagem baseada em projetos e aprendizagem colaborativa foram os métodos de ensino mais recorrentes encontrados em ambos os estudos. A maioria destes métodos de ensino requerem uma maior interação entre educadores e alunos. Apresentamos também vinculações entre os métodos de ensino e os desafios. Estabelecemos tais vinculações durante o estudo I com base numa análise de estudos empíricos sobre métodos de ensino, enquanto as vinculações do estudo II vieram de uma análise de um estudo relacionado. Tais vinculações podem ajudar os educadores na seleção dos métodos de ensino do curso, onde o educador pode escolher os métodos que lidam com os desafios do seu contexto de ensino.

Teses
1
  • GABRIEL ALVES VASILJEVIC MENDES
  • Model, Taxonomy and Methodology for Research Employing Electroencephalography-based Brain-Computer Interface Games

  • Orientador : LEONARDO CUNHA DE MIRANDA
  • MEMBROS DA BANCA :
  • LEONARDO CUNHA DE MIRANDA
  • BRUNO MOTTA DE CARVALHO
  • SELAN RODRIGUES DOS SANTOS
  • FABRICIO LIMA BRASIL
  • MARIA CECILIA CALANI BARANAUSKAS
  • Data: 31/01/2022

  • Mostrar Resumo
  • The rapid expansion of Brain-Computer Interface (BCI) technology, aligned with the advancements on the fields of Physiological Computing (PC), Human-Computer Interaction (HCI) and Machine Learning (ML), allowed for the recent development of applications outside of clinical environments, such as education, arts and games. Games controlled by electroencephalography (EEG), a specific case of BCI technology, benefit from both the fields of BCI and games, since they can be played by virtually any person regardless of physical condition, can be applied in numerous contexts, and are ludic by nature. Despite these recent advancements, there is still no solid theoretical foundation to aggregate the terminology and methods of these fields, since current models and classification schemes can represent characteristics of either BCI systems or games, but not both. In this sense, this work presents a general model for representing EEG-based BCI games; a taxonomy for classifying primary studies of the field; and a methodology for conducting scientific studies using those games. The proposed model is intended to help researchers describe, compare and develop new EEG-controlled games by instantiating its components using concepts from the fields of BCI and games. The CoDIS taxonomy was constructed based on an expanded version of this model, which considers four aspects of EEG-controlled games: concept, design, implementation and study, each with different dimensions to represent a variety of characteristics of such systems. Based on both the model and the taxonomy, and guided by the principles of empirical research, the PIERSE methodology was developed for the planning, implementation, execution and reporting of scientific experiments that employ EEG-based BCI games.


  • Mostrar Abstract
  • The rapid expansion of Brain-Computer Interface (BCI) technology, aligned with the advancements on the fields of Physiological Computing (PC), Human-Computer Interaction (HCI) and Machine Learning (ML), allowed for the recent development of applications outside of clinical environments, such as education, arts and games. Games controlled by electroencephalography (EEG), a specific case of BCI technology, benefit from both the fields of BCI and games, since they can be played by virtually any person regardless of physical condition, can be applied in numerous contexts, and are ludic by nature. Despite these recent advancements, there is still no solid theoretical foundation to aggregate the terminology and methods of these fields, since current models and classification schemes can represent characteristics of either BCI systems or games, but not both. In this sense, this work presents a general model for representing EEG-based BCI games; a taxonomy for classifying primary studies of the field; and a methodology for conducting scientific studies using those games. The proposed model is intended to help researchers describe, compare and develop new EEG-controlled games by instantiating its components using concepts from the fields of BCI and games. The CoDIS taxonomy was constructed based on an expanded version of this model, which considers four aspects of EEG-controlled games: concept, design, implementation and study, each with different dimensions to represent a variety of characteristics of such systems. Based on both the model and the taxonomy, and guided by the principles of empirical research, the PIERSE methodology was developed for the planning, implementation, execution and reporting of scientific experiments that employ EEG-based BCI games.

2
  • THIAGO NASCIMENTO DA SILVA
  • Semânticas algébricas e cálculos para lógicas de Nelson

  • Orientador : JOAO MARCOS DE ALMEIDA
  • MEMBROS DA BANCA :
  • FEY LIANG
  • TOMMASO FLAMINIO
  • MANUELA BUSANICHE
  • JOAO MARCOS DE ALMEIDA
  • UMBERTO RIVIECCIO
  • Data: 18/02/2022

  • Mostrar Resumo
  • O objetivo desta tese é estudar uma família de lógicas, composta por lógica de Nelson S, lógica construtiva com negação forte N3, lógica de quasi-Nelson QN e lógica de quasi-Nelson implicativa QNI. Isto é feito de duas maneiras. A primeira é por meio de uma axiomatização via um cálculo de Hilbert e a segunda é por meio de um estudo de algumas propriedades da correspondente quase variedade de álgebras. A principal contribuição desta tese é demonstrar que essas lógicas se encaixam dentro da teoria das lógicas algebrizáveis. Fazendo uso dessa teoria, os seguintes resultados são demonstrados. No que diz respeito à S, nós introduzimos a primeira semântica algébrica para ela, axiomatizamo-la por meio de um cálculo de Hilbert contendo um número finito de axiomas, e também encontramos uma versão do teorema da dedução para ela. Em relação às lógicas QN e QNI, nós demonstramos que ambas são algebrizáveis com respeito à quasi-variedade de álgebras de quasi-Nelson e à variedade de álgebras de quasi-Nelson implicativas, respectivamente; demonstramos que não são auto-extensionais; mostramos como a partir delas podemos obter outras lógicas conhecidas e bem estudadas usando extensões axiomáticas, tal como o {->, ~}-fragmento da lógica intuicionista, o {->, ~}-fragmento da lógica construtiva de Nelson com negação forte e a lógica clássica, e também explicitamos o termo quaternário que garante a existência de uma versão do teorema da dedução para QN e QNI. Com respeito à N3, nós estudamos o papel da identidade de Nelson ((φ -> (φ -> ψ))∧(~ ψ -> (~ ψ -> φ)) = φ -> ψ) em estabelecer propriedades sobre a ordem do reticulado de sua semântica algébrica. Além disso, nós estudamos os ⟨^, v, ~, ¬, 0, 1⟩-subredutos das álgebras de quasi-Nelson e fazendo uso de sua representação twist, nós demonstramos que essa correspondência entre objetos pode ser caracterizada como uma equivalência categorial. Por último, vale notar que como QNI é o {->, ~}-fragmento de QN, alguns resultados que dizem respeito à QNI são facilmente estendíveis à QN.


  • Mostrar Abstract
  • The aim of this thesis is to study a family of logics, comprised of Nelson’s logic S, constructive logic with strong negation N3, quasi-Nelson logic QN and quasi-Nelson implicative logic QNI. This is done in two ways. The first is by means of an axiomatisation via a Hilbert Calculus and the second is by studying some of the properties of the corresponding quasi-variety of algebras. The main contribution of the thesis is to prove that these logics fit within the theory of algebraisable logics. Making use of this result, the following are also proven. Regarding S, we introduced its first semantics, axiomatised by means of a finite Hilbert-style calculus, as well as established a version of the deduction theorem for it. Regarding QN and QNI, we showed that both are algebraisable with respect to the class of quasi-Nelson algebras and quasi-Nelson implication algebras, respectively; we showed that they are non-self-extensional; we showed how to obtain from them, by axiomatic extensions, other well-known logics, such as the {->, ~}-fragment of intuitionistic propositional logic, the {->, ~}-fragment of Nelson’s constructive logic with strong negation and the classical logic; and finally, we made explicit the quaternary term that guarantees that both QN and QNI satisfy the deduction theorem. Regarding N3, we study the role of the Nelson identity ((φ -> (φ -> ψ))∧(~ ψ -> (~ ψ -> φ)) = φ -> ψ) in establishing order-theoretic properties for its algebraic semantics. Moreover, we have studied the ⟨^, v, ~, ¬, 0, 1⟩-subreducts of quasi-Nelson algebras, and by making use of their twist representation, proved that this object-level correspondence can be stated as a categorical equivalence. Lastly, it is worth noting that QN I is the {->, ~}-fragment of QN , so some results concerning QNI may be easily extended to QN.

3
  • RODRIGO REBOUÇAS DE ALMEIDA
  •  

    Business-driven Technical Debt Prioritization

  • Orientador : UIRA KULESZA
  • MEMBROS DA BANCA :
  • CAROLYN SEAMAN
  • CHRISTOPH TREUDE
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • EIJI ADACHI MEDEIROS BARBOSA
  • MARCOS KALINOWSKI
  • UIRA KULESZA
  • Data: 23/02/2022

  • Mostrar Resumo
  •  

    Technical debt happens when teams take shortcuts on software development to gain short-term benefits at the cost of making future changes more expensive. Previous results show misalignment between the prioritization done by technical professionals and the prioritization expected by business ones. This thesis presents a business-driven approach to prioritizing technical debt. The research is organized into three phases: (i) exploratory - a survey with practitioners, to identify the business causes of technical debt interviews; (ii) concept verification - where the proposed approach was evaluated on a multi-case study; and (iii) - design and evaluation - where a design science research, with the involvement of three companies, was conducted to develop Tracy, an approach for business-driven technical debt prioritization; followed by a multiple case study on two other companies. So far, we have identified business causes and impacts of technical debt; we designed the approach for business-driven technical debt prioritization; after we developed a tool based on the approach, we finally ran a multiple case study on two companies to evaluate the solution. Results show a set of the business causes behind the creation of technical debt; and also that the business-driven prioritization of technical debt can improve the alignment and communication between the technical and business stakeholders. We also identified a set of business factors that may drive the technical debt prioritization.


  • Mostrar Abstract
  •  

    Technical debt happens when teams take shortcuts on software development to gain short-term benefits at the cost of making future changes more expensive. Previous results show misalignment between the prioritization done by technical professionals and the prioritization expected by business ones. This thesis presents a business-driven approach to prioritizing technical debt. The research is organized into three phases: (i) exploratory - a survey with practitioners, to identify the business causes of technical debt interviews; (ii) concept verification - where the proposed approach was evaluated on a multi-case study; and (iii) - design and evaluation - where a design science research, with the involvement of three companies, was conducted to develop Tracy, an approach for business-driven technical debt prioritization; followed by a multiple case study on two other companies. So far, we have identified business causes and impacts of technical debt; we designed the approach for business-driven technical debt prioritization; after we developed a tool based on the approach, we finally ran a multiple case study on two companies to evaluate the solution. Results show a set of the business causes behind the creation of technical debt; and also that the business-driven prioritization of technical debt can improve the alignment and communication between the technical and business stakeholders. We also identified a set of business factors that may drive the technical debt prioritization.

4
  • THIAGO VINICIUS VIEIRA BATISTA
  • Generalizações da Integral de Choquet como Método de Combinação em Comitês de Classificadores

  • Orientador : BENJAMIN RENE CALLEJAS BEDREGAL
  • MEMBROS DA BANCA :
  • ANNE MAGALY DE PAULA CANUTO
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • GRAÇALIZ PEREIRA DIMURO
  • RONEI MARCOS DE MORAES
  • RUI EDUARDO BRASILEIRO PAIVA
  • Data: 04/03/2022

  • Mostrar Resumo
  • Comitê de classificadores é um modelo dentro da aprendizagem de máquina que consiste em uma coleção de classificadores que processam uma mesma informação e a saída destes é combinada de alguma maneira. O processo de classificação geralmente se dá em duas etapas: a etapa de classificação e a etapa de combinação. Na etapa de classificação, cada classificador processa a informação e fornece sua opinião sobre a classe à qual o elemento pertence, na etapa de combinação, a opinião de todos os classificadores são combinadas, fornecendo uma única saída. Apesar da etapa de combinação ser de grande importância, muitos dos trabalhos encontrados na literatura focam principalmente na etapa de classificação. Neste trabalho serão propostas generalizações da integral de Choquet para uso como método de combinação em comitês de classificadores. A ideia principal é permitir uma maior liberdade de escolha de funções para compor a integral, abrindo possibilidades de otimização e utilização de funções adequadas aos dados. Além disso, é proposta uma nova noção de monotonicidade parcial e consequentemente uma alternativa à noção de funções de pré-agregação. Resultados preliminares obtidos pelas generalizações da integral de Choquet propostas mostraram que elas foram capazes de obter bons resultados, tendo tido desempenho superior a métodos conhecidos da literatura como o XGBoost, Bagging, entre outros. Além disso, as integrais que envolveram as novas funções de agregação propostas tiveram um bom desempenho quando comparadas com a performance ao se utilizar outras classes de funções, como as Cópulas e os Overlaps.



  • Mostrar Abstract
  • Ensembles of classifiers is a method in machine learning that consists in a collection of classifiers that process the same information and their output is combined in some manner. The process of classification is done in two main steps: the classification step and the combination step. In the classification step, each classifier processes the information and provides an output, in the combination step, the output of every classifier is combined, providing a single output. Although the combination step is extremely important, most works focus mostly on the classification step. Therefore, in this work, generalizations of the Choquet Integral will be proposed to be used as a combination method in ensembles of classifiers. The main idea is to allow a greater freedom of choice for functions in the integral, opening possibilities for otimization and using functions adequate to the data. Furthermore, a new notion of partial monotonicity is proposed, and consequently an alternative to the notion of pre-aggregation functions. Preliminary results that were obtained by the generalizations of the Choquet integral in the ensemble showed that they were capable of obtaining good results, having a superior performance to known methods in literature such as XGBoost, Bagging, among others. Furthermore, the generalizations that used the proposed aggregation functions had good performance when compared to other classes of functions, such as Copulas and Overlaps. 


5
  • ISLAME FELIPE DA COSTA FERNANDES
  • Hibridização de Meta-heurísticas para Problemas Multi e Many-objetivos em uma Arquitetura Multiagentes

     


  • Orientador : ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MEMBROS DA BANCA :
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MARCO CESAR GOLDBARG
  • MYRIAM REGATTIERI DE BIASE DA SILVA DELGADO
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • THATIANA CUNHA NAVARRO DE SOUZA
  • Data: 15/06/2022

  • Mostrar Resumo
  • Algoritmos híbridos combinam as melhores características de meta-heurísticas individuais. Eles têm se mostrado eficazes em encontrar soluções de boa qualidade para problemas de otimização multiobjetivo. Arquiteturas fornecem funcionalidades e recursos genéricos para a implementação de novos algoritmos híbridos capazes de resolver problemas arbitrários de otimização. Arquiteturas baseadas em conceitos de inteligência de agentes e sistemas multiagente, como aprendizado e cooperação, oferecem vários benefícios para a hibridização de meta-heurísticas. No entanto, a literatura carece de estudos sobre arquiteturas que exploram totalmente tais conceitos para hibridização multiobjetivo. Esta tese estuda uma arquitetura multiagente, chamada MO-MAHM, inspirada nos conceitos de Otimização por Nuvem de Partículas. Na MO-MAHM, partículas são agentes inteligentes que aprendem com suas experiências passadas e se movem no espaço de busca procurando por soluções de alta qualidade. A principal contribuição desta tese é estudar o potencial da MO-MAHM em hibridizar meta-heurísticas para resolver problemas de otimização combinatória com dois ou mais objetivos. Este trabalho investiga os benefícios de métodos de aprendizagem de máquina para suporte ao aprendizado dos agentes e propõe um novo operador de velocidade para mover os agentes no espaço de busca. O operador de velocidade proposto usa uma técnica de path-relinking e decompõe o espaço objetivo sem utilizar funções de agregação. Outra contribuição desta tese é uma extensa revisão das técnicas existentes de path-relinking multiobjetivo. Devido a uma carência com respeito a técnicas de path-relinking para múltiplos objetivos, esta tese apresenta um novo path-relinking baseado em decomposição, chamado MOPR/D. Experimentos abrangem três problemas de otimização combinatória de formulações distintas com até cinco funções objetivo: mochila binária multi-dimensional, alocação quadrática e árvore geradora. MO-MAHM é comparada com abordagens híbridas existentes, tais como algoritmos meméticos e hyper-heurísticas. Testes estatísticos mostram que a arquitetura apresenta resultados competitivos com respeito à qualidade dos conjuntos aproximativos e diversidade de soluções.


  • Mostrar Abstract
  • Hybrid algorithms combine the best features of individual metaheuristics. They have proven to find high-quality solutions for multi-objective optimization problems. Architectures provide generic functionalities and features for implementing new hybrid algorithms to solve arbitrary optimization problems. Architectures based on agent intelligence and multi-agent concepts, such as learning and cooperation, give several benefits for hybridizing metaheuristics. Nevertheless, there is a lack of studies on architectures that fully explore these concepts for multi-objective hybridization. This thesis studies a multi-agent architecture named MO-MAHM, inspired by Particle Swarm Optimization concepts. In the MO-MAHM, particles are intelligent agents that learn from past experiences and move in the search space, looking for high-quality solutions. The main contribution of this work is to study the MO-MAHM potential to hybridize metaheuristics for solving combinatorial optimization problems with two or more objectives. We investigate the benefits of machine learning methods for agents' learning support and propose a novel velocity operator for moving the agents in the search space. The proposed velocity operator uses a path-relinking technique and decomposes the objective space without requiring aggregation functions. Another contribution of this thesis is an extensive survey of existing multi-objective path-relinking techniques. Due to a lack in the literature of effective multi- and many-objective path-relinking techniques, we present a novel decomposition-based one, referred to as MOPR/D. Experiments comprise three differently structured combinatorial optimization problems with up to five objective functions: 0/1 multidimensional knapsack, quadratic assignment, and spanning tree. We compared the MO-MAHM with existing hybrid approaches, such as memetic algorithms and hyper-heuristics. Statistical tests show that the architecture presents competitive results regarding the quality of the approximation sets and solution diversity.

6
  • SUENE CAMPOS DUARTE
  • Reversal Fuzzy Switch Graph

  • Orientador : REGIVAN HUGO NUNES SANTIAGO
  • MEMBROS DA BANCA :
  • REGIVAN HUGO NUNES SANTIAGO
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • MANUEL ANTÓNIO GONÇALVES MARTINS
  • FLAULLES BOONE BERGAMASCHI
  • JORGE PETRUCIO VIANA
  • Data: 17/06/2022

  • Mostrar Resumo
  • Apresentamos um modelo fuzzy baseado em estados chamado Reversal Fuzzy Switch Graphs (RFSG). Este modelo possibilita a ativação ou desativação de arestas, e a atualização de valores fuzzy a partir da ação de funções de agregação, sempre que ocorrer uma transição entre estados. A característica fuzzy dos RFSGs permite modelar incertezas. A ativação e desativação de arestas permite simular aspectos dinâmicos do acesso aos estados do sistema. Quando mais de uma função de agregação é usada neste processo, temos os Reversal Fuzzy Reactive Graphs (RFRGs).
    Ademais, são propostas algumas operações sobre esses grafos que são baseadas em funções de agregação (união, interseção, produto cartesiano e extensão). Apresentamos, ainda, a relação entre os RFRGs e os usuais grafos fuzzy além de uma noção para simulação e bissimulação. Introduzimos o conceito de homomorfismo entre RFSGs e uma lógica modal para verificação de propriedades de sistemas que sejam modelados por esses grafos.


  • Mostrar Abstract
  • We present a state-based Fuzzy model called Reversal Fuzzy Switch Graphs (RFSG). This model enables the activation or deactivation of edges as well as the updating of fuzzy values from the action of aggregation functions, whenever a transition occurs between the states. The Fuzzy feature of RFSGs allows you to model uncertainties whereas th activation and deactivation of edges allow the simulation of dynamic aspects of access to system states. When more than one aggregation function is used in this process, we have the Reversal Fuzzy Reactive Graphs (RFRG).
    In addition, we propose some operations that are based on aggregation functions (unions, intersections, Cartesian product and extension). We also present the relationship between the RFRGs and the usual Fuzzy graphs together with a notion for simulation and bisimulation. We also introduce the concept of homomorphism between RFSGs and a modal logic for verifying properties of systems that are modeled by such graphs.

7
  • CIRO MORAIS MEDEIROS
  • Melhorias nas Consultas de Caminhos em Gráfos: Expressão, Avaliação e Satisfiabilidade Mínima

  • Orientador : MARTIN ALEJANDRO MUSICANTE
  • MEMBROS DA BANCA :
  • CARMEM SATIE HARA
  • CÉDRIC EICHLER
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • FAROUK TOUMANI
  • MARTIN ALEJANDRO MUSICANTE
  • MATHIEU LIEDLOFF
  • MIRIAN HALDFELD FERRARI
  • NICOLAS TRAVERS
  • NORA REYES
  • Data: 30/08/2022

  • Mostrar Resumo
  • Nós tratamos três problemas relacionados a grafos e linguagens livres-de-contexto: (1) nós desenvolvemos uma notação alternativa para expressar linguagens livres-de-contexto; (2) nós desenvolvemos e experimentamos um algoritmo para avaliação de consultas de caminhos livres-de-contexto; e (3) nós formalizamos o prolema da minimização de grafos restrita a uma linguagem formal, para o qual desenvolvemos soluções para os casos onde a linguagem formal é regular ou livre-de-contexto.


  • Mostrar Abstract
  • We deal with three problems related to graphs and context-free languages: (1) we develop an alternative notation for expressing context-free languages; (2) we design, implement and experiment a context-free path query evaluation algorithm; and (3) we formalize the formal-language-constrained graph minimization problem, for which we design solutions for the cases where the formal language is regular or context-free.

8
  • RAFAEL DE MORAIS PINTO
  • Um Framework para Análise Multidimensional de Intervenções em Saúde Pública

  • Orientador : LYRENE FERNANDES DA SILVA
  • MEMBROS DA BANCA :
  • LYRENE FERNANDES DA SILVA
  • UIRA KULESZA
  • RICARDO ALEXSANDRO DE MEDEIROS VALENTIM
  • LYANE RAMALHO CORTEZ
  • XIMENA PAMELA CLAUDIA DÍAZ BERMÚDEZ
  • PLACIDO ANTONIO DE SOUZA NETO
  • THAISA GOIS FARIAS DE MOURA SANTOS LIMA
  • WAGNER DE JESUS MARTINS
  • Data: 02/09/2022

  • Mostrar Resumo
  • Promover a conscientização, estimular a adoção de atitudes e comportamentos saudáveis são alguns dos objetivos das intervenções em saúde pública. Porém, para analisar o alcance de uma intervenção é necessário ir além dos dados epidemiológicos, uma vez que este conjunto, por si só, pode não demonstrar a real magnitude dos resultados. É necessário discutir outras fontes de dados, variáveis de interesse e dimensões que podem ser alcançadas pela intervenção. Assim, avaliar o alcance de uma intervenção em saúde pública, em uma perspectiva multidimensional por meio da abordagem de séries temporais, pode ser útil para orientar o desenvolvimento de intervenções mais eficazes na resposta da saúde pública. Nesse contexto, esta tese tem como objetivo apresentar um framework de avaliação multidimensional de intervenções em saúde pública, explorando diferentes variáveis de interesse que são possivelmente impactadas pelas intervenções. Esse framework é suportado por um software chamado Hermes, que é responsável por processar os dados em um ciclo de vida completo e mostrar seus resultados em um painel visual que permita aos tomadores de decisão avaliar o efeito ao longo do tempo antes e depois das intervenções, além de analisar possíveis correlações entre variáveis de interesses. Para compreender o estado atual da arte e orientar a pesquisa neste domínio, realizamos uma revisão sistemática da literatura que explora o uso de abordagens de tecnologia da informação para analisar o impacto de campanhas em saúde pública. Sintetizamos variáveis de interesse, dados de campanha, técnicas e ferramentas empregadas para avaliar intervenções em saúde pública. Em seguida, realizamos um estudo analítico para avaliar uma intervenção em saúde, chamada “Sífilis Não!”, lançada no Brasil. Este estudo descreve os dados analisados extraídos de sete fontes de dados diferentes entre 2015 e 2019, agrupados em quatro dimensões: campanha, comunicação, educação e vigilância epidemiológica. Os dados foram processados e transformados pelo Hermes, utilizando uma abordagem de séries temporais, seguindo o framework de análise multidimensional proposto. Além disso, outros dois estudo explorando dados do Projeto “Sífilis Não!” foram realizados, utilizando abordagens e variáveis de interesses distintas. A análise em conjunto desses estudos permitiu um entendimento melhor da amplitude do projeto de intervenção e das variáveis de interesse impactadas. Por fim, também analisamos dados epidemiológicos e de comunicação da hepatite no Brasil, a fim de realizar um estudo de caso utilizando o framework proposto, fora do contexto da sífilis. Os resultados da nossa tese contribuem para permitir uma avaliação mais abrangente do alcance das intervenções em saúde pública e, assim, permitir aos formuladores de políticas reanalisar as estratégias de conscientização desenvolvidas para alertar as pessoas sobre os cuidados de saúde e mudanças comportamentais, bem como melhor direcionar o uso de recursos de forma mais eficaz.


  • Mostrar Abstract
  • Promoting awareness, increasing knowledge, and encouraging the adoption of healthy attitudes and behaviors are some of the objectives of public health interventions. However, to analyze the scope of an intervention, it is necessary to go beyond the epidemiological data since this set, by itself, may not demonstrate the absolute magnitude of the results. It is necessary to discuss other data sources, variables of interest, and dimensions that the intervention can achieve. Thus, assessing the scope of a public health intervention from a multidimensional perspective through the time series approach can help guide the development of more effective interventions in the public health response. In this context, this thesis presents a framework for the multidimensional evaluation of public health interventions, exploring variables of interest that are possibly impacted by interventions. This framework is supported by a software called Hermes, responsible for processing the data in a complete lifecycle and showing its results in a visual dashboard that allows decision makers to assess the effect over time before and after campaigns and analyze possible correlations between variables of interest. To understand the current state of the art and guide research in this domain, we conducted a systematic literature review that explores the use of information technology approaches to analyze the impact of public health campaigns. This study summarizes variables of interest, campaign data, techniques, and tools used to evaluate public health interventions. We also conducted an analytical study to evaluate a health intervention launched in Brazil named “Sífilis Não!”. This study describes the analyzed data extracted from seven data sources between 2015 and 2019, grouped into four dimensions: campaign, communication, education, and epidemiological surveillance. Hermes processed and transformed the data using a time series approach, following the proposed multidimensional analysis framework. In addition, two other studies were conducted exploring data from the “Syphilis No!” project, using different approaches and variables of interest. The joint analysis of these data allowed a better understanding of the project’s scope and the impacted variables of interest. Finally, we also analyzed epidemiological and communication data on hepatitis in Brazil to carry out a case study using the proposed framework, outside syphilis. The results of our thesis contribute to enabling a more comprehensive assessment of the scope of public health interventions and thus enabling policymakers to re-examine awareness-raising strategies developed to alert people to health care and behavioral changes, as well as better direct the use of resources more effectively.

9
  • ALLAN VILAR DE CARVALHO
  • O Problema do Caixeiro Viajante com Múltiplos Passageiros Bônus Opcionais Quota e Tempo

  • Orientador : ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MEMBROS DA BANCA :
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • ISLAME FELIPE DA COSTA FERNANDES
  • MARCO CESAR GOLDBARG
  • MATHEUS DA SILVA MENEZES
  • Data: 23/11/2022

  • Mostrar Resumo
  • O trabalho apresenta o Problema do Caixeiro Viajante com Múltiplos Passageiros Bônus Opcionais Quota e Tempo. O problema tem o objetivo de maximizar o lucro de um caixeiro viajante que além de transportar mercadorias pode transportar passageiros para ratear as suas despesas de rota. As mercadorias e os passageiros devem ser transportados obrigatoriamente das suas origens para os seus destinos. As mercadorias transportadas requerem tempo de carregamento e descarregamento, e devem contabilizar uma quota mínima definida a priori. O caixeiro também decide se transporta ou não uma mercadoria ou um passageiro quando visita uma localidade. O trabalho descreve o problema, o relaciona com outros problemas, e o formaliza matematicamente.  São propostos um modelo de programação matemática não linear, dois algoritmos heurísticos, e treze algoritmos meta-heurísticos. As heurísticas desenvolvidas seguiram as meta-heurísticas ACO, GRASP e Transgenético. Também é proposta uma linearização do modelo de programação matemática não linear. Foram criados dois conjuntos de instâncias de teste. Um experimento computacional que compara e valida os modelos e algoritmos propostos é apresentado.


  • Mostrar Abstract
  • This work presents the Traveling Salesman Problem with Multiple Passengers Optional Bonus Quota and Time. This problem has the objective of maximizing the profit of a traveling salesman who in addition to transporting goods can transport passengers to apportion their travel expenses. Goods and passengers must be transported from their origins to their destinations. The goods transported require loading and unloading time, and must account for a minimum quota defined a priori. The salesman also decides whether or not to transport a goods or a passenger when visiting a locality. This work describes the problem, relates it to other problems, and formalizes it mathematically. A nonlinear mathematical programming model, two heuristic algorithms, and thirteen metaheuristic algorithms are proposed. The heuristics developed followed the meta-heuristics ACO, GRASP and Transgenetic. A linearization of the nonlinear mathematical programming model is also proposed. Two sets of test instances have been created. A computational experiment that compare and validates the models and algorithms proposed is presented.

10
  • ARTHUR EMANOEL CASSIO DA SILVA E SOUZA
  • SAPPARCHI: Uma plataforma Escalável para Executar Aplicações em Cidades Inteligentes

  • Orientador : NELIO ALESSANDRO AZEVEDO CACHO
  • MEMBROS DA BANCA :
  • ALUÍZIO FERREIRA DA ROCHA NETO
  • CARLOS ANDRE GUIMARÃES FERRAZ
  • FLAVIA COIMBRA DELICATO
  • NELIO ALESSANDRO AZEVEDO CACHO
  • THAIS VASCONCELOS BATISTA
  • Data: 28/11/2022

  • Mostrar Resumo
  • In the Smart Cities environment, applications development and execution face important challenges related to 1) Big Data Concept: The huge amount of processed and stored data with various data sources and data types; 2) Multi-domains: the many involved domains (Economy, Traffic, Health, Security, Agronomy, etc); and 3) Multiples processing methods like Data Flow, Batch Processing, Services, and Microservices. In facing these challenges, many platforms, middlewares, and architectures have been proposed to run applications in the Smart City’s environment. Despite all the progress already made, the vast majority of solutions have not met the functional requirements of Application Development, Application Deployment, and Application Runtime. Some studies point out that in a universe of 97 platforms, only 20.6% met the functional requirements of Application Development, Application Deployment, and Application Runtime. And, when those requirements are related to Scalability (non-functional), this number goes to 0.01%. Due to the lack of solutions that explore these requirements, all these concerns on Smart City’s Application Developing are passed on to the various stakeholders. For example, while Service Providers are concerned with: How to measure, charge, deploy, scale-up or scale-down, and execute to efficiently use the Computing Infrastructure, for developers it is important to know: How to implement, execute, scale application components, where to store their data, and where to deploy (Cloud, Fog, or Edge). In this work, we seek to outline and answer some of these questions. To this, we propose to build an evolutionary model for organizing and executing applications in the context of Smart Cities, the Smart City Application Architectural Model (Sapparchi). Sapparchi is an integrated architectural model for Smart Cities applications that define multi-processing levels (at the moment can support Edge, Fog, and Cloud). In addition, solutions are presented for monitoring, deploying, and scaling applications deployed at Cloud, Fog, and Edge levels. Finally, we present the Sapparchi middleware platform for developing, deploying, and running applications in the smart city environment with a focus on self-scaling and multi-processing computacional levels (From Cloud to Edge)


  • Mostrar Abstract
  • In the Smart Cities environment, applications development and execution face important challenges related to 1) Big Data Concept: The huge amount of processed and stored data with various data sources and data types; 2) Multi-domains: the many involved domains (Economy, Traffic, Health, Security, Agronomy, etc); and 3) Multiples processing methods like Data Flow, Batch Processing, Services, and Microservices. In facing these challenges, many platforms, middlewares, and architectures have been proposed to run applications in the Smart City’s environment. Despite all the progress already made, the vast majority of solutions have not met the functional requirements of Application Development, Application Deployment, and Application Runtime. Some studies point out that in a universe of 97 platforms, only 20.6% met the functional requirements of Application Development, Application Deployment, and Application Runtime. And, when those requirements are related to Scalability (non-functional), this number goes to 0.01%. Due to the lack of solutions that explore these requirements, all these concerns on Smart City’s Application Developing are passed on to the various stakeholders. For example, while Service Providers are concerned with: How to measure, charge, deploy, scale-up or scale-down, and execute to efficiently use the Computing Infrastructure, for developers it is important to know: How to implement, execute, scale application components, where to store their data, and where to deploy (Cloud, Fog, or Edge). In this work, we seek to outline and answer some of these questions. To this, we propose to build an evolutionary model for organizing and executing applications in the context of Smart Cities, the Smart City Application Architectural Model (Sapparchi). Sapparchi is an integrated architectural model for Smart Cities applications that define multi-processing levels (at the moment can support Edge, Fog, and Cloud). In addition, solutions are presented for monitoring, deploying, and scaling applications deployed at Cloud, Fog, and Edge levels. Finally, we present the Sapparchi middleware platform for developing, deploying, and running applications in the smart city environment with a focus on self-scaling and multi-processing computacional levels (From Cloud to Edge)

11
  • THALES AGUIAR DE LIMA
  • An Investigation of Accent Inclusion in Brazilian Portuguese Speech

  • Orientador : MARJORY CRISTIANY DA COSTA ABREU
  • MEMBROS DA BANCA :
  • MARJORY CRISTIANY DA COSTA ABREU
  • BRUNO MOTTA DE CARVALHO
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • ALTAIR OLIVO SANTIN
  • MARCOS ANTONIO SIMPLICIO JUNIOR
  • Data: 16/12/2022

  • Mostrar Resumo
  • Speech is a very important part of our way to communicate as a species and combined
    with the evolution of instant messaging in voice format as well as automated chatbots,
    its importance has become even greater. While the majority of speech technologies have
    achieved high accuracy, they fail when tested for accents that deviate from the “standard”
    of a language. This becomes more concerning for languages that lack on datasets and
    have scarce literature, like Brazilian Portuguese. In a parallel development, artificial
    intelligence(AI)-based tools are an accepted increasingly present in people’s lives, even
    if not always noticeable. This excluding behaviour combined with the advancement of
    AI in speech systems and the lack of resources, have inspired the three objectives of
    this work. Thus, this thesis proposes to explore news ways for Accent Conversion for
    this language, adapting a light-weight model called SABr+Res, which must convert from
    PaulistatoNordestino. The second is to provide an acoustic analysis of Brazilian Portuguese
    accents, covering a wide area of the national territory, finding and formalising possible
    differences between them. Finally, to collect and release a speech dataset for Brazilian
    Portuguese. With a method that explores the availability of data and information in
    video platforms, the method automatically downloads the videos from TEDx Talks. Those
    short presentations are a source of reliable and clean audio with human and automatically
    generated transcriptions


  • Mostrar Abstract
  • Speech is a very important part of our way to communicate as a species and combined
    with the evolution of instant messaging in voice format as well as automated chatbots,
    its importance has become even greater. While the majority of speech technologies have
    achieved high accuracy, they fail when tested for accents that deviate from the “standard”
    of a language. This becomes more concerning for languages that lack on datasets and
    have scarce literature, like Brazilian Portuguese. In a parallel development, artificial
    intelligence(AI)-based tools are an accepted increasingly present in people’s lives, even
    if not always noticeable. This excluding behaviour combined with the advancement of
    AI in speech systems and the lack of resources, have inspired the three objectives of
    this work. Thus, this thesis proposes to explore news ways for Accent Conversion for
    this language, adapting a light-weight model called SABr+Res, which must convert from
    PaulistatoNordestino. The second is to provide an acoustic analysis of Brazilian Portuguese
    accents, covering a wide area of the national territory, finding and formalising possible
    differences between them. Finally, to collect and release a speech dataset for Brazilian
    Portuguese. With a method that explores the availability of data and information in
    video platforms, the method automatically downloads the videos from TEDx Talks. Those
    short presentations are a source of reliable and clean audio with human and automatically
    generated transcriptions

2021
Dissertações
1
  • RAVELLY OLIVEIRA DOS SANTOS SALES
  • Caixeiro Viajante com Elétrico com Passageiros

  • Orientador : MARCO CESAR GOLDBARG
  • MEMBROS DA BANCA :
  • MARCO CESAR GOLDBARG
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MATHEUS DA SILVA MENEZES
  • Data: 25/01/2021

  • Mostrar Resumo
  • O campo de pesquisa da logística tem observado o crescente uso de veículos elétricos em diferentes ramos, incluindo o de transporte de passageiros.  O PCVEP é um problema de logística que mescla elementos do conhecido Problema do Caixeiro Viajante (PCV), do Problema do Caixeiro Viajante com Passageiros (PCVP) e do Problema do Caixeiro Viajante Elétrico com Janela de Tempo (PCVEJT), além de considerar também, restrições para o incremento ou recarga da autonomia de deslocamento e o fato de a autonomia ser sensível à quantidade de passageiros embarcados no veículo, todas intrínsecas à própria problemática e que dificultam ainda mais a capacidade de resolução do problema. A realização deste trabalho consistiu na pesquisa e no estudo de Problemas de Roteamento de Veículos Elétricos (PRVE) e de problemas que abordam questões de ridesharing. No primeiro momento, realizou-se o levantamento bibliográfico dos trabalhos que abordam e solucionam as questões acima apontadas para a devida formulação e descrição do PCVEP. Por conseguinte, por se tratar de um problema inédito, criou-se um banco de instâncias euclidianas para a problemática, parte aleatória e parte adaptada da TSPLIB. Como métodos solucionadores ao PCVEP, desenvolveu-se um conjunto de algoritmos heurísticos, ingênuos e hibridizados, para a devida ancoragem dos experimentos. Ainda, um outro conjunto de algoritmos meta-heurísticos foi desenvolvido para o PCVEP, um procedimento guloso aleatorizado, melhorado através de uma busca em vizinhança variável descendente, e um algoritmo de colônia de formigas multi-formigas, com formigas que admitem em seu processo resolutivo, características próprias do PCVEP, como estações de recarga, distância entre localidades e carregamento de passageiros. O PCVEP aborda e soluciona PRVE, trazendo à tona importantes questões de sustentabilidade, promovendo a minimização da emissão de gases causadores do efeito estufa na atmosfera, reduzindo o tráfego nas grandes cidades, e, também, incentivando a socialização entre as pessoas. 


  • Mostrar Abstract
  • The logistics research field has observed the growing use of electric vehicles in different branches, including passenger transport. The PCVEP is a logistics problem that mixes elements of the well-known Traveling Salesman Problem (PCV), the Traveling Salesman with Passengers Problem (PCVP) and the Traveling Time Electric Salesman Problem (PCVEJT), in addition to also considering, restrictions for increasing or recharging travel autonomy and the fact that the autonomy is sensitive to the number of passengers loaded in the vehicle, all intrinsic to the problem itself and which further hamper the ability to solve the problem. The accomplishment of this work consisted of the research and the study of Problems of Routing of Electric Vehicles (PRVE) and of problems that address issues of ridesharing. In the first moment, a bibliographic survey of the works that addressed and solved the issues mentioned above was carried out for the proper formulation and description of the PCVEP. Therefore, because it is an unprecedented problem, a bank of Euclidean instances was created for the problem, a random part and an adapted part of TSPLIB. As solving methods for PCVEP, a set of heuristic, naive and hybridized algorithms was developed, for the proper anchoring of the experiments. Yet another set of meta-heuristic algorithms was developed for PCVEP, a randomized greedy procedure, improved through a search in descending variable neighborhood, and a colony algorithm of multi-ant ants, with ants that admit in their solving process , characteristics specific to PCVEP, such as charging stations, distance between locations and passenger loading. PCVEP addresses and solves PRVE, bringing up important sustainability issues, promoting the minimization of greenhouse gas emissions into the atmosphere, reducing traffic in large cities, and also encouraging socialization among people.

2
  • JOÃO GABRIEL QUARESMA DE ALMEIDA
  • Aqüeducte: Um Serviço para Integração de Dados Heterogêneos em Cidades Inteligentes

  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • THAIS VASCONCELOS BATISTA
  • EVERTON RANIELLY DE SOUSA CAVALCANTE
  • FREDERICO ARAUJO DA SILVA LOPES
  • RENATA GALANTE
  • Data: 28/01/2021

  • Mostrar Resumo
  • A evolução e o desenvolvimento de novas soluções tecnológicas para cidades inteligentes tem crescido significativamente nos últimos anos. O cenário das cidades inteligentes é constituído por uma grande quantidade de dados, dispostos de maneira decentralizada, oriundos devariados dispositivos e aplicações. Com isso, são apresentados desafios relacionados como a interoperabilidade de dados, incluindo o compartilhamento de informação, coleta de dadosde múltiplas fontes (serviços Web, arquivos, sistemas em geral, etc.), e a disponibilizaçãoem plataformas de desenvolvimento focadas em aplicações para cidades inteligentes. Tendoem vista esses desafios, o presente trabalho apresenta o Aqüeducte , um serviço queprover a coleta, filtragem e conversão de dados provenientes de fontes diversas para o protocolo de troca de dados, NGSI-LD. Além disso, permite a utilização de tais dados,por meio do processo de importação, para omiddleware Smart Geo Layers(SGeoL) quefaz uso do mesmo protocolo. O Aqüeducte também realiza o gerenciamento de arquivos de formatos diversos, bem como prover o relacionamento de dados de diferentes domínios.Todas essas funcionalidades são oferecidas através de uma aplicação web de alto nível que visa proporcionar maior facilidade ao usuário final, para realização dos processoscitados. Este trabalho descreve a arquitetura, implementação e metodologia utilizada peloAqüeducte para: (i) extrair dados de fontes de dados heterogêneas, (ii) enriquecê-los deacordo com o formato de dados NGSI-LD utilizando o conceito de Linked-data juntamente com ontologias, via modelo de dados LGeoSIM, e (iii) publicá-los em um middleware baseado em NSGI-LD, que no caso deste trabalho é o SGeoL. A utilização do Aqüeducte é também descrita em cenários de cidade inteligente do mundo real.


  • Mostrar Abstract
  • The evolution and development of new technological solutions for smart cities has grown significantly in recent years. The scenario of smart cities consists of a large amountof data, arranged in a decentralized way, from various devices and applications. This context presents challenges related to data interoperability, including information sharing,data collection from multiple sources (web services, archives, systems in general, etc.),and availability on development platforms focused on applications for intelligent cities.Considering these challenges, this work presents Aqüeducte , a service that provides collection, filtering and conversion of data from various sources to the data exchangeprotocol, NGSI-LD. In this way, it allows the use of data through an importing process tothe Smart Geo Layers middleware (SGeoL) that use of the same protocol. In addition,it provides management of files of various formats, as well as supports relationship ofdata from different domains. All these functionalities are offered through a high level webapplication that aims at providing ease use to the final user to carry out the aforementionedprocesses. This work, in turn, describes the architecture, implementation and methodologyused by Aqüeducte for: (i) extracting data from heterogeneous data sources, (ii) enriching them according to the NGSI-LD data format using the concept of Linked-data togetherwith ontologies, via the LGeoSIM data model, and (iii) publishing them in middlewarebased on the NSGI-LD protocol, which in the case of this work is SGeoL. The use ofAqüeducte is also described in real world intelligent city scenarios

3
  • ELISIO BRENO GARCIA CARDOSO
  • Redes em Chip Irregulares para Tolerância a Falhas e Atendimento de Tempo Real

  • Orientador : MONICA MAGALHAES PEREIRA
  • MEMBROS DA BANCA :
  • GUSTAVO GIRAO BARRETO DA SILVA
  • MARCIO EDUARDO KREUTZ
  • MONICA MAGALHAES PEREIRA
  • SILVIO ROBERTO FERNANDES DE ARAUJO
  • Data: 28/01/2021

  • Mostrar Resumo
  • As redes-em-chip surgiram devido à necessidade de comunicar de forma eficiente dezenas de núcleos de sistemas multiprocessados em um único chip. Desde então, tornaram-se um dos principais paradigmas de comunicação para esse tipo de sistema, com diversos modelos arquiteturais sendo propostos ao longo dos anos. Os projetos buscam atender principalmente restrições relacionadas à latência média, área da rede, consumo de energia, dentre outros. Os projetos atuais também abrangem a arquitetura da rede, com a geração de topologias que proporcionam desempenho otimizado para aplicações específicas. Este trabalho propõe uma heurística para a geração de topologias tolerantes a falhas capazes de entregar os pacotes de tempo real por um caminho alternativo dentro da rede em caso de falha em um canal. Para avaliar a solução proposta, foi utilizado um simulador em SystemC desenvolvido para criar topologias irregulares, rotear pacotes com restrição de tempo real, algoritmo de roteamento baseado em uma tabela de roteamento e injeção de falhas nos canais.


  • Mostrar Abstract
  • The advances in integration capacity of the chips allowed the emergence of systems with several processing cores, with networks-on-chip becoming the main paradigm in the communication between elements of multi-processed systems. Several proposals have emerged in order to meet mainly restrictions of average latency, area, energy consumption. The projects also cover the network architecture, with the generation of topologies that provide optimized performance for specific applications. This work proposes a heuristic for the generation of fault-tolerant topologies capable of delivering real-time and non-real-time packets via an alternative path within the network in the event of a link failure. Exploration always starts from a regular mesh-2D topology and seeks fault-tolerant topologies that are able to deliver as many packages as possible on time. The development of the implementation is based on the NOC42 simulator, making it capable of working with irregular topologies, real-time packages and a routing algorithm based on a routing table.

4
  • WANDERSON MODESTO DA SILVA
  • Integração de Dispositivos Elétricos Inteligentes de Abordagem Legada em Sistemas Smart Grid Baseados na IoT

  • Orientador : AUGUSTO JOSE VENANCIO NETO
  • MEMBROS DA BANCA :
  • AUGUSTO JOSE VENANCIO NETO
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • EDUARDO COELHO CERQUEIRA
  • Data: 29/01/2021

  • Mostrar Resumo
  • A evolução das Redes Elétricas Inteligentes (do inglês Smart Grid) rumo a Internet das Coisas (IoT) é entendida como uma evolução do sistema elétrico atual, além de ser uma tendência natural que prevê uma enorme importância no que diz respeito às infraestruturas críticas elétricas de todos os países. A atualização dos sistemas Smart Grid para o contexto da IoT trará potencial para as bases alcançarem benefícios futuros, permitindo com que novas oportunidades do mercado de Smart Grid surjam e agreguem valor por meio de inovações inteligentes, e também garantindo maior confiabilidade e eficiência energética, que pode levar a reduções dos custos de produção e manutenção de sistemas simultaneamente. O passo fundamental que está por trás da atualização dos sistemas Smart Grid, definidos pela IoT, está na necessidade de adaptar a infraestrutura da Smart Grid por uma camada digital, para torná-la compatível com o paradigma da IoT. Para que isso seja possível faz-se necessário o uso de tecnologias emergentes, tais como 5G, computação em nuvem e a computação na borda. Nesse contexto, a interoperabilidade entre os sistemas e os dispositivos eletrônicos inteligentes (IEDs) legados, utilizados pela Smart Grid, tornou-se uma questão importante, visto que cada fabricante pode adotar um padrão diferente, as distribuidoras de energia já possuem seus sistemas consolidados e qualquer mudança neste equilíbrio afeta diretamente a infraestrutura do sistema. Assim, a integração de IEDs legados em um ambiente Smart Grid baseados na IoT, foi realizada pelo uso dos componentes da arquitetura SG2IoT, apresentada neste trabalho, que permitiu a inclusão de múltiplos IEDs a um ambiente escalável e flexível possibilitado pelo ecossistema SG-Cloud-IoT. Uma aplicação de monitoramento de IEDs utilizando a plataforma FIWARE foi utilizada com objetivo de validar a solução proposta no referente a exibição de informações críticas,e de estado dos IEDs entre outras informações em tempo real. Por último, experimentos foram realizados com intuito de avaliar a performance da solução quando submetida a vários níveis de estresse causado pelo aumento da inclusão do número de dispositivos que utilizam protocolos Smart Grid legados, tais como o IEC 61850 e o DNP3.


  • Mostrar Abstract
  • The evolution of the Smart Grid towards the Internet of Things (IoT) is an evolution of the electrical system, it is a natural trend, and it foresees great importance in the scope of mission-critical infrastructures for all countries. The IoT-defined Smart Grid system upgrade will potentially lay the groundwork to achieve future benefits, enabling new opportunities in the Smart Grid market to arise and add value through smart innovations and also to ensure better reliability and energy efficiency, which can lead to a reduction in the production cost and systems maintenance at the same time. The fundamental step that is behind the IoT-defined Smart Grid system upgrade lies in the need to adapt the smart grid infrastructure by the digital layer, to turn it comply with the IoT paradigm. For this to be possible, it is necessary to use emerging technologies such as 5G, cloud computing, and edge computing. In this context, the interoperability between legacy systems and intelligent electronic devices (IED) used by the Smart Grid has become an important issue, since each manufacturer can adopt a different standard, energy distributors already have their systems consolidated and any change in this balance directly affects the system's infrastructure. Thus, the integration of legacy IEDs in a Smart Grid environment based on IoT, was accomplished by using the components of the SG2IoT architecture, presented in this work, which allowed the inclusion of multiple IEDs in a scalable and flexible environment made possible by the SG-Cloud-IoT ecosystem. Also, an application for monitoring IEDs using the FIWARE platform was used in order to validate the proposed solution regarding the display of critical information, the status of IEDs, and other information in real-time. Finally, experiments were carried out to evaluate the performance of the solution when subjected to various levels of stress caused by the increased inclusion of the number of devices using legacy Smart Grid protocols, such as IEC 61850 and DNP3.

5
  • JULLIANA CAROLINE GONÇALVES DE ARAÚJO SILVA MARQUES
  • The impact of feature selection methods on online handwritten signature by using clustering-based analysis

  • Orientador : MARJORY CRISTIANY DA COSTA ABREU
  • MEMBROS DA BANCA :
  • BRUNO MOTTA DE CARVALHO
  • MARJORY CRISTIANY DA COSTA ABREU
  • PLACIDO ANTONIO DE SOUZA NETO
  • Data: 29/01/2021

  • Mostrar Resumo
  • Handwritten signature is one of the oldest and most accepted biometric authentication methods for human identity establishment in society. With the popularisation of computers and, consequently, computational biometric authentication systems, the signature was chosen for being one of the biometric traits of an individual that is likely to be relatively unique for every person. However, when dealing with biometric data, including signature data, problems related to high dimensional space, can be generated.  Among other issues, irrelevant, redundant data and noise are the most significant, as they result in a decreased of identification accuracy. Thus, it is necessary to reduce the space by selecting the smallest set of features that contain the most discriminative features, increasing the accuracy of the system. In this way, our proposal in this work is to analyse the impact of feature selection on individuals identification accuracy based on the handwritten online signature. For this, we will use two well-known online signature databases: SVC2004 and xLongSignDB. For the feature selection process, we have applied two filter and one wrapper methods. Then, the resulted datasets are evaluated by classification algorithms and validated with a clustering technique. Besides, we have used a statistical test to corroborate our conclusions. Experiments presented satisfactory results when using a smaller number of features which are more representative, showing that we reached an average accuracy of over 98\% for both datasets which were validated with the clustering methods, which achieved an average accuracy over 80\% (SVC2004) and 70\% (xLongSignDB).


  • Mostrar Abstract
  • Handwritten signature is one of the oldest and most accepted biometric authentication methods for human identity establishment in society. With the popularisation of computers and, consequently, computational biometric authentication systems, the signature was chosen for being one of the biometric traits of an individual that is likely to be relatively unique for every person. However, when dealing with biometric data, including signature data, problems related to high dimensional space, can be generated.  Among other issues, irrelevant, redundant data and noise are the most significant, as they result in a decreased of identification accuracy. Thus, it is necessary to reduce the space by selecting the smallest set of features that contain the most discriminative features, increasing the accuracy of the system. In this way, our proposal in this work is to analyse the impact of feature selection on individuals identification accuracy based on the handwritten online signature. For this, we will use two well-known online signature databases: SVC2004 and xLongSignDB. For the feature selection process, we have applied two filter and one wrapper methods. Then, the resulted datasets are evaluated by classification algorithms and validated with a clustering technique. Besides, we have used a statistical test to corroborate our conclusions. Experiments presented satisfactory results when using a smaller number of features which are more representative, showing that we reached an average accuracy of over 98\% for both datasets which were validated with the clustering methods, which achieved an average accuracy over 80\% (SVC2004) and 70\% (xLongSignDB).

6
  • LUIS TERTULINO DA CUNHA NETO
  • Algoritmo Transgenético para os Problemas da Geometria e da Intensidade em IMRT

  • Orientador : SILVIA MARIA DINIZ MONTEIRO MAIA
  • MEMBROS DA BANCA :
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MARCO CESAR GOLDBARG
  • THATIANA CUNHA NAVARRO DE SOUZA
  • Data: 08/02/2021

  • Mostrar Resumo
  • Radioterapia de Intensidade Modulada (IMRT) é uma forma de tratamento de doenças cancerígenas em que o paciente é irradiado com feixes de radiação, com o objetivo de eliminar as células tumorais ao mesmo tempo em que órgãos e tecidos sadios são preservados o máximo possível. Cada feixe é dividido em sub-feixes. Um plano de tratamento é composto de: (a) um conjunto de direções para os feixes (ângulos); (b) quantidade de radiação emitida pelos sub-feixes de cada feixe; e (c), uma sequência de entrega da radiação. A elaboração de um plano pode ser modelada por problemas de otimização, em geral NP-difíceis, onde as etapas (a), (b) e (c) são denominadas de problemas da Geometria, Intensidade (ou Mapa de Fluências) e Realização, respectivamente. Este trabalho aborda as duas primeiras. É proposto um  Algoritmo Transgenético para lidar com esses dois problemas em conjunto. O algorimto proposto usará uma adaptação do método épsilon-restrito para calcular o mapa de fluências de um conjunto de feixes. São propostas funções aproximadoras lineares e quadráticas para um tipo particular de função (não-convexa) presente na otimização em radioterapia: a função de dose-volume. São realizados dois grupos de experimentos para averiguar a eficácia do algoritmo: um com a dose no tumor como restrição, e outro com ela como função objetivo. São utilizados casos reais de câncer de fígado nos experimentos. Os resultados para o primeiro grupo mostram a eficácia na otimização das funções objetivo e doses aquém das desejadas para o tumor. Os resultados para o segundo grupo mostram que a dose no tumor enquanto função objetivo do problema é de fato a opção mais apropriada.


  • Mostrar Abstract
  • Intensity Modulated Radiotherapy (IMRT) is a form of treatment of cancerous diseases in which the patient is irradiated with radiation beams, aiming to eliminate tumor cells while sparing healthy organs and tissues as much as possible. In addition, each beam is divided into beamlets that emit a particular dose of radiation. A treatment plan is composed of: (a) a set of beam directions (angles); (b) the amount of radiation emitted by the beamlets of each beam; and (c), a radiation delivery sequence. The elaboration of a plan can be modeled by optimization problems, usually NP-hard, where steps (a), (b) and (c) are called problems of Geometry, Intensity (or Fluence Map) and Realization, respectively. This work addresses the first two. A transgenetic algorithm is proposed for the joint solution of these two problems. It uses an adaptation of the epsilon-constraint method present in the literature to compute the fluence map of a set of beams. In addition, linear and quadratic approximation functions are proposed for a particular type of (non-convex) function present in radiotherapy optimization: the dose-volume function. Two groups of experiments are carried out to ascertain the effectiveness of the algorithm: one with the dose in the tumor as a restriction, and another with it as an objective function. Real cases of liver cancer are used in the experiments. The results for the first group show the effectiveness in the optimization of objective functions and doses below those desired for the tumor. The results for the second group show that the tumor dose as an objective function of the problem is in fact the most appropriate option.

7
  • LUCAS RODRIGUES SILVA
  • O FRAMEWORK CONBAT: SUPORTE A TESTES BASEADOS EM CONTEXTO PARA SISTEMAS DESENVOLVIDOS EM ARDUINO

  • Orientador : ROBERTA DE SOUZA COELHO
  • MEMBROS DA BANCA :
  • ROBERTA DE SOUZA COELHO
  • NELIO ALESSANDRO AZEVEDO CACHO
  • UIRA KULESZA
  • WILKERSON DE LUCENA ANDRADE
  • Data: 26/02/2021

  • Mostrar Resumo
  • Sistemas embarcados, em especial os sistemas sensíveis ao contexto, cujo
    comportamento é determinado por informações constantemente obtidas através dos
    mais diversos tipos de sensores, podem ser muito difíceis de serem testados. Isso
    porque a natureza de dados de entrada é difícil de ser replicada, além de serem
    sistemas com recursos naturalmente limitados. Dessa forma, abordagens de teste de
    software que funcionam muito bem em sistemas “comuns” podem ser insuficientes para
    esse tipo de sistema. As ferramentas criadas até o momento para apoiar a atividade de
    testes em sistemas embarcados se limitam em grande parte ao suporte à criação de
    testes de unidade, evitando lidar com dados recebidos diretamente de sensores, que
    são na verdade a base do funcionamento dos sistemas sensíveis ao contexto. Para
    auxiliar a atividade de testes nesse tipo de sistema, este trabalho propõe (i) uma
    abordagem para coletar e documentar a variação de dados de contexto capturados por
    sensores, (ii) o conceito de testes baseados em contexto e (iii) o desenvolvimento de
    uma ferramenta, o Context Based Testing (ConBaT), com o propósito de auxiliar a
    coleta de dados de contexto e a criação de testes baseados em contexto para sistemas
    desenvolvidos em Arduino.


  • Mostrar Abstract
  • Embedded systems, especially context-aware systems, whose behaviour is determined
    by information constantly obtained by different kinds of sensors, can be very hard to be
    tested. That happens due to the nature of their input data, which can be hard to
    replicate, and also because of their limited resources. Thus, software testing techniques
    that may work for “common” software can be insufficient for this kind of system. Tools
    created to support the testing activity of embedded systems are often limited to unit
    tests, and avoid having to deal with data received from sensors, which is actually the
    foundation of context-aware systems. To support software testing on context-aware
    systems, this work proposes (i) an approach to collect and document the variation of
    context data captured by sensors over time, (ii) the concept of context driven testing
    and (iii) the development of a tool called Context Based Testing framework (ConBaT
    framework) to help collecting context data and creating context driven tests for Arduino
    systems.

8
  • SÁVIO RENNAN MENÊZES MELO
  • Uma Abordagem de Definição de Políticas para Offloading de Dados no Contexto de Computação em Névoa

  • Orientador : GIBEON SOARES DE AQUINO JUNIOR
  • MEMBROS DA BANCA :
  • FERNANDO ANTONIO MOTA TRINTA
  • GIBEON SOARES DE AQUINO JUNIOR
  • THAIS VASCONCELOS BATISTA
  • Data: 24/05/2021

  • Mostrar Resumo
  • Atualmente, os mais variados objetos estão conectados à internet e, ao mesmo tempo,
    gerando quantidades massivas de dados. Ligado a esse fato, as aplicações de internet das
    coisas estão cada vez mais complexas e com mais responsabilidades. Armazenar, processar,
    gerenciar e analisar essa quantidade de dados são processos desafiadores. A execução
    desses processos comumente é realizada em serviços externos através da computação em
    nuvem, porém, um paradigma chamado de computação em névoa habilita tal execução
    diretamente na borda da rede, servindo como um respaldo para o funcionamento ágil e
    eficiente da internet das coisas. Entretanto, quando a computação em névoa não possui
    recursos suficientes para realizar essas ações, os dados são transferidos para entidades
    com maiores capacidades computacionais, que é uma prática conhecida como offloading.
    A esse respeito, esta pesquisa investiga o uso de políticas que norteiam o processo de
    offloading de dados no contexto de computação em névoa. Portanto, o objetivo deste
    trabalho é definir e organizar estratégias para orientar o desenvolvimento de políticas para
    offloading de dados em computação em névoa. Para isto, os resultados concretos do trabalho
    foram: o levantamento de políticas para offloading de dados propostas pela literatura;
    o desenvolvimento de uma taxonomia que organiza os principais aspectos utilizados no
    processo de offloading de dados; o desenvolvimento de uma estrutura de orientação que
    recomenda práticas para elaboração de políticas para offloading de dados e a demonstração
    da instanciação da abordagem através de uma prova de conceito. Finalmente, esta pesquisa
    identifica que o uso de tais estratégias tem muito a contribuir para aplicações baseadas
    em computação em névoa, uma vez que aprimora o processo de offloading de dados.


  • Mostrar Abstract
  • Currently, the most varied objects are connected to the Internet and, at the same time,
    generating massive amounts of data. Linked to this fact, the internet of things applications
    are increasingly complex and with more responsibilities. Storing, processing, managing, and
    analyzing this amount of data are challenging processes. The execution of these processes
    is commonly performed in external services through cloud computing, however, a paradigm
    called fog computing enables such execution directly at the edge of the network, serving
    as a support for the agile and efficient functioning of the internet of things. However,
    when fog computing does not have enough resources to perform these actions, the data is
    transferred to entities with higher computational capabilities, which is a practice known
    as offloading. In this regard, this research explore the use of policies that guide the process
    of data offloading in the context of fog computing. Therefore, the objective of this work is
    to define and organize strategies to guide the development of policies for data offloading
    in fog computing. For this, the concrete results of the work were: the survey of policies for
    data offloading proposed by the literature; the development of a taxonomy that meets the
    main aspects used in the data offloading process; the development of a guide structure
    that recommends practices for policy making for data offloading and a demonstration of
    the instantiation of the approach, through proof of concept. Finally, this research identifies
    that the use of such strategies has much to contribute to fog-based applications as it
    improves the data offloading process.

9
  • CARLOS DIEGO FRANCO DA ROCHA
  • WoundArch: Um Sistema de Arquitetura Híbrida para a Segmentação e Classificação de Feridas Crônicas

  • Orientador : BRUNO MOTTA DE CARVALHO
  • MEMBROS DA BANCA :
  • AURA CONCI
  • BRUNO MOTTA DE CARVALHO
  • BRUNO SANTANA DA SILVA
  • FERNANDO MARQUES FIGUEIRA FILHO
  • ITAMIR DE MORAIS BARROCA FILHO
  • Data: 31/05/2021

  • Mostrar Resumo
  • Todo ano, milhões de pessoas são acometidas por feridas crônicas em todo o mundo. O processo de tratamento de feridas é custoso e exige que profissionais de enfermagem desenvolvam atividades durante assistência aos pacientes, dentre elas: a correta identificação e classificação dos tecidos da ferida. Desta maneira, este trabalho propõe construir um sistema computacional híbrido de duas configurações para o apoio ao tratamento de feridas. A primeira configuração utiliza um aplicativo móvel para realizar a captura, segmentação e classificação das imagens de feridas. A outra configuração possui uma arquitetura cliente-servidor, as imagens são capturadas e segmentadas no aplicativo e enviadas, por meio da Internet, ao servidor-web, que se encarrega de realizar a classificação dos tecidos das feridas. Para isso, foram realizados alguns estudos na literatura, a saber:  revisão em artigos científicos, aplicativos similares ao proposto neste trabalho, métodos de avaliação de eficiência de sistemas computacionais e algoritmos de classificação de ferida. Assim, este trabalho utiliza o método de segmentação e classificação de imagens de ferida desenvolvido por Marques et al. \cite{marques2018ulcer} para construir o sistema computacional híbrido. Foi elaborado um questionário de avaliação que será aplicado aos especialistas em enfermagem do Hospital Universitário Onofre Lopes a fim de avaliar a qualidade técnica de segmentação e classificação das feridas. Deste modo, por meio de um \textit{survey}, buscou-se responder a seguinte questão de pesquisa: o tempo de execução e os gastos de energia são aceitáveis pelos enfermeiros em ambas as configurações do sistema?


  • Mostrar Abstract
  • Every year, millions of people are affected by chronic wounds around the world. The wound treatment process is costly and requires nursing professionals to develop activities during patient care, among them: the correct identification and classification of wound tissues. In this way, this work proposes to build a hybrid computational system of two configurations to support the treatment of wounds. The first configuration uses a mobile application to perform the capture, segmentation and classification of the images of wounds. The other configuration has a client-server architecture, the images are captured and segmented in the application and sent, through the Internet, to the web server, which is responsible for classifying the tissue of the wounds. For this, some studies were carried out in the literature, namely: review of scientific articles, applications similar to the one proposed in this work, methods for assessing the efficiency of computer systems and wound classification algorithms. Thus, this work uses the method of segmentation and classification of wound images developed by Marques et al. \cite{marques2018ulcer} to build the hybrid computational system. An evaluation questionnaire was developed to be applied to nursing specialists at Hospital Universitário Onofre Lopes in order to assess the technical quality of segmentation and classification of wounds. Thus, by means of a \ textit {survey}, we sought to answer the following research question: are the execution time and energy expenditures acceptable by nurses in both configurations of the system?

10
  • ARTHUR COSTA GORGÔNIO
  • Um Framework Semissupervisionado para Classificação de Dados em Fluxos Contínuos

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • MEMBROS DA BANCA :
  • ANNE MAGALY DE PAULA CANUTO
  • MARJORY CRISTIANY DA COSTA ABREU
  • JOAO CARLOS XAVIER JUNIOR
  • KARLIANE MEDEIROS OVIDIO VALE
  • ARAKEN DE MEDEIROS SANTOS
  • Data: 25/06/2021

  • Mostrar Resumo
  • Aplicações no domínio de fluxos contínuos de dados (do inglês, Data Streams) recebem
    um grande volume de dados rapidamente e, existe a necessidade de processá-los sequencialmente.
    Uma característica destas aplicações é que os dados podem sofrer mudanças
    durante o processo da utilização do modelo, ademais a quantidade de instâncias cujo rótulo
    é conhecido pode não ser suficiente para gerar um modelo eficaz. A fim de suprimir
    a dificuldade da pouca quantidade de instâncias rotulada, pode-se utilizar o aprendizado
    semissupervisionado. Além disso, o uso de comitês de classificadores pode auxiliar na
    detecção da mudança de contexto. Assim, neste trabalho, é proposto um método para
    realizar a classificação semissupervisionada em tarefas com fluxos contínuos de dados,
    utilizando uma abordagem baseada em comitês de classificadores. Para avaliar a eficácia
    da proposta, são realizados testes empíricos com onze bases de dados utilizando dois diferentes
    tamanhos de batch, nove abordagens supervisionadas (três classificadores simples
    e seis comitês), por meio das métricas acurácia, precisão, recall e F-Score. Ao avaliar a
    quantidade de instâncias processadas, as abordagens supervisionadas obtiveram um desempenho
    praticamente constantes, enquanto que a proposta apresentou uma melhora de
    8,28% e 3,81% utilizando 5% e 10% de instâncias rotuladas, respectivamente. De modo
    geral, os resultados apontam que aumentar a quantidade de instâncias processadas nos
    batches implica, na maioria das vezes, na melhora dos resultados da abordagem semissupervisionada.


  • Mostrar Abstract
  • Data stream applications receive a large volume of data quickly, and they need to process
    them sequentially. In these applications, the data may change during the use of the model;
    in addition, the number of instances whose label is known may not be sufficient to generate
    an effective model. Semi-supervised learning can be used to suppress the difficulty
    of the small number of instances labelled. Also, an ensemble of classifiers can assist in
    detecting the concept drift. So, in this work, we proposed a framework to perform the
    semi-supervised classification in tasks in a data stream context, using an approach based
    on an ensemble of classifiers. In order to evaluate the effectiveness of this proposal, empirical
    tests are carried out with eleven databases using two different batches sizes, nine
    supervised approaches (three simple classifiers and six ensembles), using the metrics accuracy,
    precision, recall and F-Score. When assessing the number of instances processed, the
    supervised approaches achieved practically stable performance, while the proposal showed
    an improvement of 8.28% and 3.81% using 5% and 10% of labelled instances, respectively.
    In general, the results show that increasing the number of instances processed in batches
    implies, in most cases, improving the results of the semi-supervised approach.

11
  • BRUNO DOS SANTOS FERNANDES DA SILVA
  • An investigative analysis of Gender Bias in JudicialData using Supervised and Unsupervised MachineLearning Techniques

  • Orientador : MARJORY CRISTIANY DA COSTA ABREU
  • MEMBROS DA BANCA :
  • EVERTON RANIELLY DE SOUSA CAVALCANTE
  • LAURA EMMANUELLA ALVES DOS SANTOS SANTANA DE OLIVEIRA
  • MARJORY CRISTIANY DA COSTA ABREU
  • PLACIDO ANTONIO DE SOUZA NETO
  • Data: 05/07/2021

  • Mostrar Resumo
  • Brazilian Courts have been working in virtualisation of judicial processes since this century's rise, leading to a revolution in
    relations, services and labour force. A huge volume of data has been produced and computational techniques have been an intimate ally to keeping business processes under control and delivering services as juridical clients expect. However,although there is a misunderstanding that automation solutions are always ’intelligent’, which in most cases, it is not true, there has never been any discussion about the use of intelligent solutions for this end as well as any issues related with automatic predicting and decision making using historical data in context. One of the problems that has already come to light is the bias in judicial datasets around the world. Thus, this work will focus on evaluating,applying and understanding resources based on fine and parameter tuning, with the end of better using machine learning techniques when working on judicial systems, and, therefore,raising the discussion related to secondary issues. We have used a real dataset of judicial sentences (Além da Pena), applying supervised and unsupervised learning models and our results point to the accuratedetection of gender bias.


  • Mostrar Abstract
  • Brazilian Courts have been working in virtualisation of judicial processes since this century's rise, leading to a revolution in
    relations, services and labour force. A huge volume of data has been produced and computational techniques have been an intimate ally to keeping business processes under control and delivering services as juridical clients expect. However,although there is a misunderstanding that automation solutions are always ’intelligent’, which in most cases, it is not true, there has never been any discussion about the use of intelligent solutions for this end as well as any issues related with automatic predicting and decision making using historical data in context. One of the problems that has already come to light is the bias in judicial datasets around the world. Thus, this work will focus on evaluating,applying and understanding resources based on fine and parameter tuning, with the end of better using machine learning techniques when working on judicial systems, and, therefore,raising the discussion related to secondary issues. We have used a real dataset of judicial sentences (Além da Pena), applying supervised and unsupervised learning models and our results point to the accuratedetection of gender bias.



12
  • JOSÉ GAMELEIRA DO RÊGO NETO
  •  
     
     
     
     

    Entendendo a Relação entre Integração Contínua e Cobertura de Testes: Um Estudo Empírico

     

  • Orientador : UIRA KULESZA
  • MEMBROS DA BANCA :
  • ELDER JOSÉ REIOLI CIRILO
  • FREDERICO ARAUJO DA SILVA LOPES
  • NELIO ALESSANDRO AZEVEDO CACHO
  • UIRA KULESZA
  • Data: 13/08/2021

  • Mostrar Resumo
  •  
     
     
     
     

    A evolução das metodologias e práticas de desenvolvimento vem possibilitando a redução no tempo de entrega de novas funcionalidades e melhorias de um software. Uma das práticas mais populares e utilizadas atualmente que pode contribuir para redução no tempo de entrega do software é a Integração Contínua (Continuous Integration - CI). Ela busca automatizar e integrar o código fonte de uma equipe com uma alta frequência durante o desenvolvimento do software. A adoção de CI ajuda aos desenvolvedores encontrar problemas de integração mais rapidamente, agilizando na sua resolução. Acredita-se também que a prática de CI contribui para a redução de bugs ao longo do ciclo de vida do software, uma vez que ela também preconiza o uso de testes automatizados para garantir a qualidade do código integrado. Uma das formas para avaliar a qualidade dos testes realizados é usando métricas de cobertura de testes. Estudos recentes buscam entender a relação que existe entre a adoção da prática de CI e os testes realizados. Este trabalho apresenta um estudo empírico que investiga a relação entre CI e cobertura dos testes no contexto de projetos open-source. O estudo compara projetos que adotaram a prática de integração contínua (CI) com projetos que não adotaram CI (NOCI), assim como projetos que adotaram CI mas são de repositórios diferentes. Os resultados do estudo sugerem que projetos CI apresentam taxas mais altas e uma maior estabilidade na cobertura de código quando comparado com projetos NOCI.


  • Mostrar Abstract
  •  

    The evolution of software development methodologies has enabled an increase in the delivery of new features and improvements. One of the best practices for increasing the delivery speed is continuous integration (CI). CI is a practice that motivates automating and integrating source code more often during software development. The adoption of CI helps developers to find integration issues faster. It is believed that the practice of CI helps the software to have fewer bugs throughout its lifecycle. One of the ways to find bugs is by performing software tests, and one of the most used metrics to ensure quality in software testing is test coverage. Therefore, it is believed that CI adoption and test coverage have a strong relationship. Previous studies have provided preliminary evidence for this relationship between CI and tests, however, most of them do not demonstrate it empirically. This dissertation proposes an empirical study that aims to identify the relationship between CI adoption and test coverage through the analysis of several open-source projects. We quantify coverage trend comparisons over time between projects that adopt (or do not ) CI. Our results suggest that CI projects have high test coverage rates and stability, while NOCI projects have low coverage rates and less potential for growth.


    Keywords: continuous integration, test coverage, empirical study

     

    The evolution of software and hardware systems has enabled the application of such technologies

    to assist in solving day-to-day problems in the context of big cities. Over the last

    years, there is an increasing interest companies, researchers and government in the development

    of large-scale systems and applications for the domain of smart cities. Large-scale

    software systems often present critical challenges for their development, maintenance and

    evolution. Smart city applications typically involve dealing with many challenges, such

    as scalability, security, communication and heterogeneity. One way to identify problems

    in the source code of large-scale systems is through the usage of static analysis tools. In

    this context, this work presents an exploratory study that aims to evaluate the usefulness

    of modern static analysis tools in the context of smart city applications. The study

    analyzes 3 real smart cities systems through the analysis of rule violations reported by the

    SonarQube tool. In addition, the work also relates such violations to existing challenges

    of the smart city domain reported by the literature. The results show that the challenges

    of security, data management and maintenance of the platform are the ones that exhibit

    more problems related to static analysis.

    The evolution of software and hardware systems has enabled the application of such technologies

    to assist in solving day-to-day problems in the context of big cities. Over the last

    years, there is an increasing interest companies, researchers and government in the development

    of large-scale systems and applications for the domain of smart cities. Large-scale

    software systems often present critical challenges for their development, maintenance and

    evolution. Smart city applications typically involve dealing with many challenges, such

    as scalability, security, communication and heterogeneity. One way to identify problems

    in the source code of large-scale systems is through the usage of static analysis tools. In

    this context, this work presents an exploratory study that aims to evaluate the usefulness

    of modern static analysis tools in the context of smart city applications. The study

    analyzes 3 real smart cities systems through the analysis of rule violations reported by the

    SonarQube tool. In addition, the work also relates such violations to existing challenges

    of the smart city domain reported by the literature. The results show that the challenges

    of security, data management and maintenance of the platform are the ones that exhibit

    more problems related to static analysis.

     
     
13
  • MATHEWS PHILLIPP SANTOS DE LIMA
  • Avaliação de estratégias de decisão de Mobilidade MADM orientados para a qualidade em cenário de redes 5G

  • Orientador : AUGUSTO JOSE VENANCIO NETO
  • MEMBROS DA BANCA :
  • AUGUSTO JOSE VENANCIO NETO
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • DANIEL CORUJO
  • VICENTE ANGELO DE SOUSA JUNIOR
  • Data: 29/10/2021

  • Mostrar Resumo
  • O crescimento do número de Equipamentos de Usuário (UE) ocasionou a necessidade do desenvolvimento de novas tecnologias de redes móveis a fim de suprir a demanda de tráfego exigida. Com isso, surge o conceito de Redes Móveis de Quinta Geração (5G) com inúmeros paradigmas e abordagens a fim de avançar sobre as necessidades de serviço da internet atual. Entretanto, o gerenciamento de mobilidade em redes móveis depara-se com inúmeras necessidades a serem resolvidas, uma delas trata-se da eficiência dos mecanismos de decisão de handover. Foram documentados na literatura inúmeros mecanismos com o intuito de obter a melhor decisão de mobilidade. Dentre os vários algoritmos de decisão de mobilidade identificados na literatura,as soluções baseadas em Multiatributo (Multiple Attribute Decision Making– MADM) sãoconsideradas as mais robustas pela sua eficiência no que diz respeito ao tráfego multimídia em redes móveis. A maior parte das avaliações de métodos de decisão baseados em MADM documentados na literatura não dispõe de uma análise abrangente sobre os aspectos subjetivos relacionados à percepção/satisfação do usuário no que concerne aos modelos de decisão de mobilidade, que é uma condição primordial para avaliar a Qualidade de Experiência (Quality of Experience -– QoE) nas aplicações multimídia aplicadas neste cenário. Portanto, este trabalho oferece uma ampla revisão dos métodos MADM aplicados ao processo de decisão de mobilidade orientada para a qualidade.


  • Mostrar Abstract
  • The growth in the number of User Equipment (UE) in the need for the development of new mobile network technologies is needed in order to meet the demand for traffic required. With this, the concept of Mobile Networks of Fifth Generation (5G) emerges with innumerable paradigms and approaches in order to advance on how the current internet service needs. However, mobility management in mobile networks is faced with the need to be resolved, one of which is the efficiency of handover decision mechanisms. Numerous numbers have been documented in the literature in order to obtain the best mobility decisions. Among the various mobility availability algorithms, according to solutions based on Multi-Attribute (Multiple Attribute Decision Making - MADM), they are considered the most robust due to their efficiency with regard to multimedia traffic on mobile networks. Most evaluations of MADM-based methods documented in the literature do not have an analysis of data on the subjective aspects related to user perception/satisfaction with regard to mobility models, which is a fundamental condition for assessing the Quality of Experience (Quality of Experience - QoE) in multimedia applications applied in this scenario. Therefore, this work offers a wide review of MADM methods, the quality-oriented mobility decision process.

Teses
1
  • KLEBER TAVARES FERNANDES
  • Game Criativo: desenvolvendo habilidades de pensamento computacional, leitura e escrita através da criação de jogos

  • Orientador : EDUARDO HENRIQUE DA SILVA ARANHA
  • MEMBROS DA BANCA :
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • LYRENE FERNANDES DA SILVA
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • FRANCISCO MILTON MENDES NETO
  • PATRICIA CABRAL DE AZEVEDO RESTELLI TEDESCO
  • THIAGO REIS DA SILVA
  • Data: 22/01/2021

  • Mostrar Resumo
  • As iniciativas que promovem o desenvolvimento do pensamento computacional na educação básica ainda são insuficientes. Historicamente, os resultados das avaliações desse mesmo segmento têm mostrado deficiências na aprendizagem da matemática e da língua portuguesa. Observam-se pesquisas que apresentam soluções tecnológicas que priorizam a resolução dos problemas da matemática. Porém, em se tratando de produção textual (língua portuguesa), poucas são apresentadas. Uma das estratégias que pode contribuir para o desenvolvimento do pensamento computacional e da capacidade de produzir textos é o uso de jogos digitais. Estes cada vez mais fazem parte do nosso cotidiano e são considerados também como ferramentas de ensino e aprendizagem. No entanto, sua produção e documentação é uma tarefa muito complexa que requer habilidades de programação e conhecimento de várias áreas. Isso tem dificultado o desenvolvimento de jogos em sala de aula. Uma abordagem desplugada de criação de jogos a partir da linguagem natural, na qual os fundamentos da computação sejam aprendidos de forma lúdica e sem uso de computadores, mostra-se como uma alternativa para adoção da aprendizagem baseada em jogos. Neste contexto, este trabalho apresenta uma abordagem que propõe a especificação e criação de jogos de maneira desplugada a partir de textos produzidos pelos alunos, favorecendo o desenvolvimento das habilidades do pensamento computacional, de leitura e de escrita em sala de aula. Além disso, poderá favorecer o interesse dos alunos pela área da computação os motivando a ingressarem em algum curso superior e/ou alguma carreira nessa área. Usa o método hipotético dedutivo, caracterizando-se como de natureza aplicada. Classifica-se ainda como explicativo, já que propõe uma abordagem para especificação e criação de jogos digitais examinando sua aplicabilidade, efetividade e principais benefícios. Os resultados provenientes dos estudos exploratórios mostram que a abordagem proposta é aplicável ao seu contexto e apontam uma melhoria no desenvolvimento das habilidades de pensamento computacional, bem como motiva a produção textual, promovendo as habilidades de leitura e escrita dos alunos.


  • Mostrar Abstract
  • The initiatives that promote the development of computational thinking in basic education
    are still insufficient. Historically, the results of assessments in this same segment have
    shown deficiencies in the learning of mathematics and the Portuguese language. There are
    researches that present technological solutions that prioritize solving math problems.
    However, when it comes to textual production (Portuguese language), few are presented.
    One of the strategies that can contribute to the development of computational thinking and
    the ability to produce texts is the use of digital games. These are increasingly part of our
    daily lives and are also considered as teaching and learning tools. However, its production
    and documentation is a very complex task that requires programming skills and knowledge
    from various areas. This has hampered the development of games in the classroom. An
    unplugged approach to creating games based on natural language, in which the
    fundamentals of computing are learned in a playful way and without the use of computers,
    shows itself as an alternative for adopting game-based learning. In this context, this work
    presents an approach that proposes the specification and creation of games in an unplugged
    way from texts produced by students, favoring the development of computational thinking,
    reading and writing skills in the classroom. In addition, it may favor students' interest in the
    area of computing by motivating them to enter a higher education course and / or a career
    in that area. It uses the hypothetical deductive method, being characterized as applied in
    nature. It is also classified as explanatory, since it proposes an approach to specification and
    creation of digital games examining its applicability, effectiveness and main benefits. The
    results from exploratory studies show that the proposed approach is applicable to its
    context and point to an improvement in the development of computational thinking skills,
    as well as motivating textual production, promoting students' reading and writing skills.

2
  • DÊNIS FREIRE LOPES NUNES
  • IPNoSys III: O Paradigma de Redes Definidas por Software Aplicado ao Controle de um Multiprocessador com Modelo de Execução Não Convencional

  • Orientador : MARCIO EDUARDO KREUTZ
  • MEMBROS DA BANCA :
  • MARCIO EDUARDO KREUTZ
  • MONICA MAGALHAES PEREIRA
  • GUSTAVO GIRAO BARRETO DA SILVA
  • ALISSON VASCONCELOS DE BRITO
  • CESAR ALBENES ZEFERINO
  • SILVIO ROBERTO FERNANDES DE ARAUJO
  • Data: 26/01/2021

  • Mostrar Resumo
  • A utilização de Redes-em-Chip (Networks-on-Chip - NoCs) na infraestrutura de comunicação de sistemas multiprocessados (Multiprocessors System-on-Chip – MPSoCs) tem se tornado um padrão devido a sua escalabilidade e suporte a comunicações em paralelo. Essas arquiteturas possibilitam a execução de aplicações formadas por diferentes tarefas que se comunicam entre si, e o suporte a essa comunicação tem um papel fundamental no desempenho do sistema. A IPNoSys (Integrated Processing NoC System) é uma arquitetura não convencional, com modelo de execução próprio, desenvolvida para explorar essa estrutura de comunicação da NoC como um sistema de processamento de alto desempenho. No cenário de redes de computadores convencionais, houve uma convergência para a utilização do paradigma das Redes Definidas por Software (Software-Defined Network - SDN), em que o controle da rede é delegado a um componente central que possui uma visão geral da rede e, por ser programável, pode alterar a configuração da rede para se adaptar às especificidades da aplicação ou às necessidades do programador. Nesse sentido, alguns trabalhos propõe a utilização do paradigma SDN em NoCs com o objetivo de criar arquiteturas mais flexíveis. Dessa forma, as SDNoCs surgem com uma infraestrutura de comunicação mais simples, mas conectada a um controlador programável que gerencia o funcionamento da rede.  Este trabalho tem por objetivo apresentar uma arquitetura baseada no modelo de execução IPNoSys, porém utilizando-se de conceitos de SDN para prover o controle da rede. A IPNoSys III é uma NoC com topologia de malha 2D, que contém em cada nó uma unidade de comunicação e quatro núcleos de processamento, com acesso à memória, que executam pacotes no formato IPNoSys. Um controlador SDN, conectado a todos os nós, tem uma visão geral e gerencia a rede para executar o algoritmo de roteamento e mapear tarefas de acordo com os objetivos de desempenho. Como prova de conceito, foi desenvolvido um ambiente de programação e simulação para esta arquitetura em SystemC, e as avaliações realizadas mostram o funcionamento e os benefícios obtidos através da utilização de um controlador SDN.


  • Mostrar Abstract
  • The use of Networks-on-Chip (NoCs) in the communication infrastructure of multiprocessor systems (MPSoCs) has become a standard due to its scalability and support for parallel communications. These architectures allow the execution of applications formed by different tasks that communicate with each other, and the support for this communication has a fundamental role in the system's performance. IPNoSys (Integrated Processing NoC System) is an unconventional architecture, with its own execution model, developed to exploit this NoC communication structure as a high-performance processing system. In the scenario of conventional computer networks, there was a convergence towards the use of the Software-Defined Network (SDN) paradigm, and a central component controls the network, which has an overview of the network and is programmable to change the network configuration to adapt to the specifics of the application or the needs of the programmer. Some works propose the use of the SDN paradigm in NoCs in order to create more flexible architectures. Thus, SDNoCs has a simpler communication infrastructure but is connected to a programmable controller that manages the network's functioning. This work aims to present an architecture based on the IPNoSys execution model but using SDN concepts to provide network control. IPNoSys III is an NoC with a 2D mesh topology, which contains a communication unit and four processing cores on each node, with memory access, that executes packets in the IPNoSys format. An SDN controller, connected to all nodes, has an overview and manages the network to execute the routing algorithm and map tasks according to performance objectives. As a proof of concept, we developed a programming and simulation environment for this architecture in SystemC, and the evaluations performed show the operation and benefits obtained through the use of an SDN controller.

3
  • ALBA SANDYRA BEZERRA LOPES
  • FRiDa: Uma Ferramenta de Predição para Rápida Exploração de Espaço de Projeto de Processadores combinados com Aceleradores Reconfiguráveis

  • Orientador : MONICA MAGALHAES PEREIRA
  • MEMBROS DA BANCA :
  • ANNE MAGALY DE PAULA CANUTO
  • ANTONIO CARLOS SCHNEIDER BECK FILHO
  • MARCIO EDUARDO KREUTZ
  • MONICA MAGALHAES PEREIRA
  • SILVIO ROBERTO FERNANDES DE ARAUJO
  • Data: 05/02/2021

  • Mostrar Resumo
  • A cada ano aumenta-se a demanda por recursos computacionais das aplicações que executam em sistemas embarcados. Para atender a essa demanda, os projetos desses sistemas combinam componentes diversificados, resultando em plataformas heterogêneas que buscam balancear o poder de processamento com o consumo de energia. Os aceleradores reconfiguráveis se apresentam como uma alternativa cada vez mais frequente para atender a essas demandas. Entretanto, uma questão chave no projeto de aceleradores reconfiguráveis (RAs) acoplados a processadores de propósito geral (GPPs) é quais componentes combinar para atender ao desempenho esperado ao custo de área e potência adicionais. Realizar uma vasta exploração do espaço de projeto permite mensurar previamente o custo dessas plataformas antes da fase de fabricação. Entretanto a quantidade de possibilidades de soluções a serem avaliadas cresce de maneira exponencial e avaliar todas as soluções e ainda atender ao time-to-market é uma tarefa inviável. Neste trabalho, é apresentada FRiDA, uma ferramenta de predição para acelerar a exploração de espaço de projeto de sistemas que usam aceleradores reconfiguráveis. A ferramenta proposta utiliza aprendizado de máquina e através da simulação de um subconjunto do espaço de projeto em um simulador de alto nível, modelos de regressão são treinados para predizer os custos de novas configurações arquiteturais não simuladas. Diferentes modelos de regressão foram considerados para serem usados por FRiDA, e os modelos baseados em comitês de regressores apresentaram os melhores custo-benefícios quando considerados aspectos como acurácia e taxa de predições por segundo. FRiDA possibilita ainda que o projetista defina quais aspectos do projeto deseja otimizar, além de permitir a inclusão de novos aspectos. E assim, permite explorar milhares de configurações arquiteturais e encontrar soluções de alta eficiência com uma baixa taxa de erro de predição. Usando uma heurística multiobjetiva, FRiDA entrega rapidamente ao projetista soluções que que satisfaçam a um ou a múltiplos aspectos conflitantes do projeto.


  • Mostrar Abstract
  • Each year the demand of embedded applications for computational resources increases. To meet this demand, the embedded system designs have made use of the combination of diversified components, resulting in heterogeneous platforms that aims to balance the processing power with the energy consumption. However, a key question in the design of these systems is which components to combine to meet the expected performance at the cost of additional area and energy. To perform a vast design space exploration allows to estimate the cost of these platforms before the manufacturing phase. However, the number of possibilities for solutions to be evaluated grows exponentially with the increasing diversity of components that can be integrated into a heterogeneous embedded system. Evaluate the cost of one of these solutions through hardware synthesis is an extremely costly task. And even the use of high-level synthesis tools as alternative does not allow to synthesize all the solution possibilities and meet the textittime-to-market. In this work, one propose the use of prediction models based on machine learning algorithms to construct a tool for design space exploration of heterogeneous systems composed of general purpose processors and reconfigurable hardware accelerators. This tool aims to speed up the design exploration in the early stages of the design process and achieve high accuracy rates in predicting the cost of solutions. Although there are solutions in the literature that make use of the same prediction models approach, in general, these solutions address the exploration of microarchitectural parameters of only one of the components (either processors or accelerators). This work proposes the variation of the parameters of both components and also proposes the use of ensemble learning to increase the accuracy of the predictive modeling. Preliminary results show that the built prediction models are able to achieve a prediction accuracy rate of up to 98% and reduce the time for exploring the design space by 104x.

4
  • HULIANE MEDEIROS DA SILVA
  • Uma Metodologia para Definição do Número de Grupos e do Conjunto de Centros Iniciais para Algoritmos Particionais

  • Orientador : BENJAMIN RENE CALLEJAS BEDREGAL
  • MEMBROS DA BANCA :
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • ANNE MAGALY DE PAULA CANUTO
  • ARAKEN DE MEDEIROS SANTOS
  • GRAÇALIZ PEREIRA DIMURO
  • RONILDO PINHEIRO DE ARAUJO MOURA
  • Data: 05/02/2021

  • Mostrar Resumo
  • O agrupamento de dados consiste em agrupar objetos semelhantes de acordo com alguma característica. Na literatura, existem diversos algoritmos de agrupamento, dentre os quais destaca-se o algoritmo Fuzzy C-Means (FCM), um dos mais discutidos e utilizados em diferentes aplicações. Embora seja um método de agrupamento simples e fácil de manipular, o algoritmo FCM requer como parâmetro inicial o número de grupos. No geral, essa informação é desconhecida, a priori, e se torna um problema relevante no processo de análise de agrupamento de dados. Além disso, o desenho do algoritmo FCM depende fortemente da seleção dos centros iniciais dos grupos. Normalmente, a escolha do conjunto de centros iniciais é feita aleatoriamente, o que pode comprometer o desempenho do FCM e, consequentemente, o processo de análise de agrupamento. Neste contexto, este trabalho propõe uma nova metodologia pra determinar o número de grupos e o conjunto de centros iniciais de algoritmos particionais, usando como estudo de caso o algoritmo FCM e algumas de suas variantes. A ideia é usar um subconjunto dos dados originais para definir o número de grupos e determinar o conjunto de centros iniciais através de um método baseado em funções do tipo média. Com essa nova metodologia, pretende-se reduzir os efeitos colaterais da fase de definição de grupos, possivelmente tornando mais rápido o tempo de processamento e diminuindo o custo computacional. Para avaliar a metodologia proposta, serão utilizados diferentes índices de validação de agrupamento, capazes de avaliar a qualidade dos agrupamentos obtidos pelo algoritmo FCM e algumas
    de suas variantes, quando aplicados a diferentes bases de dados.


  • Mostrar Abstract
  • Data clustering consists of grouping similar objects according to some characteristic. In literature, there are several clustering algorithms, among which stands out the Fuzzy C-Means (FCM), one of the most discussed algorithms, being used in different applications. Although it is a simple and easy to manipulate clustering method, the FCM requires as its initial parameter the number of clusters. Usually, this information is unknown, beforehand and this becomes a relevant problem in the data cluster analysis process. Moreover, the design of the FCM algorithm strongly depends on the selection of the initial centers of the clusters. In general, the selection of the initial set of centers is random, which may compromise the performance of the FCM and, consequently, of the cluster analysis process. In this context, this work proposes a new methodology to determine the number of clusters and the set of initial centers of the partial algorithms, using the FCM algorithm and some of its variants as a case study. The idea is to use a subset of the original data to define the number of clusters and determine the set of initial centers through a method based on mean type functions. With this new methodology, we intend to reduce the side effects of the clusters definition phase, possibly speeding up the processing time and decreasing the computational cost. To evaluate the proposed methodology, different cluster validation
    indices will be used to evaluate the quality of the clusters obtained by the FCM algorithms and some of its variants, when applied to different databases.

5
  • ALUÍZIO FERREIRA DA ROCHA NETO
  • Edge-distributed Stream Processing for Video Analytics in Smart City Applications

     

  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • THAIS VASCONCELOS BATISTA
  • NELIO ALESSANDRO AZEVEDO CACHO
  • FLAVIA COIMBRA DELICATO
  • JOSÉ NEUMAN DE SOUZA
  • PAULO DE FIGUEIREDO PIRES
  • Data: 31/03/2021

  • Mostrar Resumo
  • Aplicações emergentes de Internet das Coisas (IoT) baseadas em sensores distribuídos einteligência, especialmente no contexto de cidades inteligentes, apresentam muitos desafiospara a infraestrutura de rede e de processamento. Por exemplo, um único sistema comalgumas dezenas de câmeras de monitoramento é suficiente para saturar o backbonedacidade uma vez que tal sistema gera fluxos massivos de dados para aplicações baseadas em eventos que demandam um rápido processamento visando ações imediatas. A busca por uma pessoa desaparecida usando a tecnologia de reconhecimento facial é uma dessas aplicações que requer ação imediata no local onde essa pessoa se encontra, uma vez queesta localização é uma informação perecível. Uma estratégia promissora para dar suporte à demanda computacional de sistemas amplamente distribuídos geograficamente é a integração da computação de borda com inteligência de máquina visando se interpretar dados próximos aos sensores e reduzir a latência de ponta a ponta no processamento dos eventos.No entanto, devido à capacidade limitada e heterogeneidade dos dispositivos de borda,tal processamento distribuído não é trivial, especialmente quando as aplicações têm difer-entes requisitos de Qualidade de Serviço (QoS). Este trabalho apresenta um arcabouço para distribuição das tarefas de análise de vídeo na borda da rede.Tal arcabouço abrange uma arquitetura, métodos e algoritmos para (i) dividir o processamento de fluxos de vídeoem grande escala em várias tarefas de aprendizado de máquina; (ii) implantar essas tarefas como um workflow de processamento de dados em dispositivos de borda equipados com aceleradores de hardware para redes neurais; (iii) alocar um conjunto de nós com capacidade de processamento suficiente para executar oworkflow, minimizando o custo operacional relacionado à latência e energia e maximizando a disponibilidade. Também propomos a reutilização de nós executando tarefas compartilhadas por várias aplicações como, por exemplo, reconhecimento facial, otimizando assim o rendimento destes nós. Esse trabalho também apresenta simulações visando demonstrar que a distribuição do processamento em vários nós de borda reduz a latência e o consumo de energia e aindamelhora a disponibilidade em comparação ao processamento na nuvem.


  • Mostrar Abstract
  • Emerging IoT applications based on distributed sensors and machine intelligence, especially in the context of smart cities, present many challenges for network and processing infrastructure. For example, a single system with a few dozen monitoring cameras is sufficient to saturate the city’s backbone. Such a system generates massive data streamsfor event-based applications that require rapid processing for immediate actions. Finding a missing person using facial recognition technology is one of those applications that require immediate action at the location where that person is since this location is perishable information. An encouraging plan to support the computational demand for widely geographically distributed systems is to integrate edge computing with machine intelligence tointerpret massive data near the sensor and reduce end-to-end latency in event processing. However, due to the limited capacity and heterogeneity of the edge devices, distributed processing is not trivial, especially when applications have different QoS requirements.This work presents an edge-distributed system framework that supports stream processingfor video analytics. Our approach encompasses an architecture, methods, and algorithms to (i) divide the heavy processing of large-scale video streams into various machine learning tasks; (ii) implementing these tasks as a data processing workflow on edge devices equipped with hardware accelerators for neural networks; (iii) allocate a set of nodes with sufficient processing capacity to perform the workflow, minimizing the operational costrelated to latency and energy and maximizing availability. We also propose to reuse nodes by performing tasks shared by various applications, such as facial recognition, thus optimizing the nodes’ throughput. We also present simulations to show that the distribution of processing across multiple edge nodes reduces latency and energy consumption and further improves availability compared to processing in the cloud.

6
  • JULIANA DE ARAÚJO OLIVEIRA
  • Projetando de Forma Eficiente o Código de Tratamento de Exceções em Aplicativos Android

  • Orientador : NELIO ALESSANDRO AZEVEDO CACHO
  • MEMBROS DA BANCA :
  • EIJI ADACHI MEDEIROS BARBOSA
  • FERNANDO JOSÉ CASTOR DE LIMA FILHO
  • NELIO ALESSANDRO AZEVEDO CACHO
  • ROBERTA DE SOUZA COELHO
  • WINDSON VIANA DE CARVALHO
  • Data: 31/05/2021

  • Mostrar Resumo
  • A popularidade da plataforma Android pode ser atribuída à capacidade de executar aplicativos que potencializam os diversos recursos dos dispositivos móveis. Os aplicativos Android são em sua maioria escritos em Java, no entanto, eles são muito diferentes dos aplicativos Java padrão, com diferentes abstrações, vários pontos de entrada e também têm uma forma diferente de comunicação entre os componentes. Estas diferenças na estrutura de aplicações Android têm produzido efeitos negativos na experiência do usuário em termos de baixa robustez. Em termos de robustez, o mecanismo de tratamento de exceções para a plataforma Android tem dois problemas principais: (1) a abordagem Terminate ALL" e (2) a falta de uma visão holística do comportamento excepcional. O tratamento de exceções está fortemente relacionado à robustez do programa. Além da robustez, o consumo de energia e o desempenho são outros requisitos não funcionais que precisam ser levados em consideração durante o desenvolvimento. Esses três requisitos podem afetar diretamente a qualidade da experiência do usuário e a qualidade do funcionamento dos aplicativos. Neste contexto este trabalho propõe uma metodologia geral para engenharia eciente de aplicativos Android e um EHM denominado DroidEH para suportar a metodologia e melhorar a robustez de aplicativos Android. Estudos foram realizados para entender o impacto do tratamento de exceções na robustez e no consumo de energia dos aplicativos Android. A avaliação da metodologia mostrou que ela é satisfatória para atingir o objetivo de permitir ao desenvolvedor tomar decisões levando em consideração esses requisitos não funcionais e determinar através do trade-o entre esses requisitos, diferentes modos de operação que podem ser implementados no aplicativo usando o DroidEH. Além disso, foi observado que uso do DroidEH em aplicativos pode aumentar sua robustez.


  • Mostrar Abstract
  • The popularity of the Android platform can be attributed to their ability to run apps that leverage the many capabilities of mobile devices. Android applications are mostly written in Java, however, they are very different from standard Java applications, with different abstractions, multiple entry points, and also have a different form of communication between components. These differences in the structure of Android applications have had negative effects on the user experience in terms of low robustness. In terms of robustness, the exception handling mechanism for the Android platform has two main problems: (1) the Terminate ALL" approach and (2) a lack of a holistic view on exceptional behavior. Exception handling is strongly related to program robustness. In addition to robustness, energy consumption and performance are other non-functional requirements that need to be taken into account during development. These three requirements can directly affect the quality of the user experience and the quality of the functioning of the applications. In this context this work proposes a general methodology to efficient engineering of Android applications and an EHM called DroidEH to support the methodology and to improve the robustness of Android applications. Studies have been carried out to understand the impact of exception handling on the robustness and energy consumption of Android applications. The evaluation of the methodology showed that it is satisfactory in achieving the objective of allowing the developer to make decisions taking into account these non-functional requirements and to determine through the trade-o between these requirements, dierent operation modes that can be implemented in the application using the DroidEH. Furthermore, it was observed that the use of DroidEH in applications can enhance its robustness.

7
  • ERICA ESTEVES CUNHA DE MIRANDA
  • Um Framework Fundamentado na Engenharia de Requisitos para Apoiar a Conformidade Legal e Regulatória em Sistemas Computacionais

  • Orientador : MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • MEMBROS DA BANCA :
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • APUENA VIEIRA GOMES
  • JOSUÉ VITOR DE MEDEIROS JÚNIOR
  • FERNANDA MARIA RIBEIRO DE ALENCAR
  • MARILIA ARANHA FREIRE
  • Data: 29/07/2021

  • Mostrar Resumo
  • O universo legal e regulatório permeia a tudo e a todos. Sendo assim, os sistemas computacionais necessitam estarem, desde sua concepção, evolução, ou até sua manutenção, em conformidade legal e regulatória com as leis, normas, regulamentação, regimentos, estatutos, padrões, dentre outras mídias legais (nomeadas, nesta pesquisa, de fontes legais ou regulatórias - FLR), que regem o seu domínio, o seu contexto de aplicação. O objetivo desta pesquisa foi oferecer uma alternativa ao profissional da Computação (analistas de requisitos e gerentes de projeto, principalmente) de verificar e manter esta conformidade legal e regulatória em seus projetos, onde as fontes legais ou regulatórias não abrangem mais apenas pessoas físicas ou jurídicas, mas também pessoas digitais e, onde, essas FLR podem não ser mais somente nacionais. Identificar, definir e priorizar essas FLR passaram a ser problemas para esses profissionais da Computação no contexto de desenvolvimento de sistemas computacionais. Deste modo foram adotadas seguintes estratégias metodológicas: revisão sistemática da literatura; entrevistas presenciais e remotas; questionários; estudos de caso; pesquisa-ação; e etnografia organizacional. Como resultado desta pesquisa, foi formalizado e avaliado, junto a representantes do público alvo de usuários, um framework visando auxiliar profissionais da Computação, no processo de implementação, implantação e verificação (auditoria) da conformidade legal e regulatória em sistemas computacionais. Assim, além de criar facilidades em todo o ciclo de trabalho com os requisitos legais ou regulatórios, possibilita sistemas computacionais em conformidade legal e regulatória com FLR, as quais estiverem submetidos.


  • Mostrar Abstract

  • The regulatory and legal universe permeates everything and everyone. Therefore, computer systems need to be from their conception, evolution, or even their maintenance in regulatory and legal compliance with the laws, rules, regulations, bylaws, statutes, standards, among other legal media (named, in this research, from regulatory or legal sources - RLS) that rule your domain, your application context. The objective of this research was to offer a alternative to the Computing professional (e.g., requirements analysts/engineers and project managers) ways to verify and maintain legal and regulatory compliance in their projects, where regulatory or legal sources no longer cover only individuals or legal entities, but also digital people and those RLS can not be only national. Identifying, defining and prioritizing these RLS have become problems for these Computing professionals in different contexts, especially in agile ecosystems of computing systems development. Thus, the following methodological strategies were adopted: systematic literature review; face-to-face and remote interviews; questionnaires; case studies; action research; and organizational ethnography. As a result of this research, it was formalized and evaluated with representatives of the target user audience a framework aimed for assisting Computing professionals, in the deployment and implementation process, and verification (audit) of regulatory or legal compliance in computer systems in agile ecosystems, despite being easily adaptable to any other methodology. Thereby, in addition to creating facilities throughout the work cycle with regulatory or legal requirements, enable computer systems in regulatory and legal compliance with RLS.


8
  • CARINE AZEVEDO DANTAS
  • Uma Análise de integração de técnicas de Seleção Dinâmica na construção de um Sistema de Classificação

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • MEMBROS DA BANCA :
  • ANNE MAGALY DE PAULA CANUTO
  • MARJORY CRISTIANY DA COSTA ABREU
  • DANIEL SABINO AMORIM DE ARAUJO
  • ARAKEN DE MEDEIROS SANTOS
  • DIEGO SILVEIRA COSTA NASCIMENTO
  • Data: 30/07/2021

  • Mostrar Resumo
  • O uso de técnicas de seleção dinâmica, seja de atributos ou membros de comitês, tem aparecido
    em diversos trabalhos na literatura como um mecanismo para aumentar a precisão
    de comitês de classificadores. Individualmente, cada uma dessas técnicas já mostrou os
    benefícios da sua utilização. O objetivo deste trabalho é melhorar a eficiência dos comitês
    de classificadores através da utilização de técnicas de seleção dinâmica para a definição da
    estrutura destes sistemas. Com isso, será possível explorar a utilização dessas duas técnicas
    de maneira integrada na classificação de uma instância, fazendo com que cada instância
    seja classificada utilizando um subconjunto próprio de atributos e classificadores. Quando
    usadas de maneira integrada, devido o uso dos dois processos dinâmicos, acredita-se que
    o sistema completo possui um elevado tempo de execução. Visando superar essa desvantagem
    em sua utilização, onde o sistema dinâmico completo será utilizado apenas em
    determinadas instâncias. Assim, as algumas instâncias seriam classificadas usando todo
    o sistema dinâmico, enquanto as demais instâncias seriam classificadas utilizando apenas
    um único classicador. Em outras palavras, algumas instâncias podem não exigir um nível
    alto de complexidade do sistema de classificação. Para estas instâncias, um classificador
    será utilizado. Deste modo, o comitê dinâmico só será utilizado apenas em instâncias
    consideradas difíceis de classificar. Resultados iniciais mostraram que a integração dessas
    duas técnicas dinâmicas obteve resultados promissores em termos de acurácia. Por fim,
    esses resultados não foram significativamente afetados com a adição do critério de decisão,
    que gerou uma redução bastante expressiva no tempo de processamento total do sistema.


  • Mostrar Abstract
  • The use of dynamic selection techniques, for attributes or members of an ensemble,
    has appeared in several works in the literature as a mechanism to increase the accuracy of rating
    ensembles. Individually, each of these techniques has already shown the benefits of using it. The
    objective of this work is to improve the efficiency of the classifier ensembles through the use of
     dynamic selection techniques for the definition of structure of these systems. With that, it will be
    possible to explore the use of these two techniques integrated in the classification of an instance,
    making each instance be classified using its own subset of attributes and classifiers. When used in
    an integrated manner, due to the use of the two dynamic processes, it is believed that the complete
    system has a long execution time. Aiming to overcome this disadvantage in its use, where the
    complete dynamic system will be used only in certain instances. Thus, some instances would be
    classified using all the dynamic system, while the other instances would be classified using only a single classifier. In other words, some instances may not require a level high complexity of the classification system. For these instances, a classifier will be used. In this way, the dynamic ensemble will only be used in instances considered difficult to classify. Initial results showed that the integration of these two dynamic techniques obtained promising results in terms of accuracy. Finally, these results were not significantly affected by the addition of the decision criterion, which generated a very significant reduction in the total processing time of the system.


9
  • HUDSON GEOVANE DE MEDEIROS
  • Uma Abordagem Multiobjetivo para o Problema da Realização da Radioterapia de Intensidade Modulada

  • Orientador : ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MEMBROS DA BANCA :
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MARCO CESAR GOLDBARG
  • ANNA GISELLE CAMARA DANTAS RIBEIRO RODRIGUES
  • MATHEUS DA SILVA MENEZES
  • THALITA MONTEIRO OBAL
  • Data: 10/08/2021

  • Mostrar Resumo
  • Os algoritmos são parte essencial no planejamento da radioterapia, que, sob o ponto devista da otimização, pode ser dividido em três sub-problemas. A definição dos ângulosde disparo e o mapa de dosagem para cada ângulo são dois deles. Este trabalho estuda oterceiro problema, que é chamado de problema da realização. Ele consiste em definir umasequência de configurações para um dispositivo (chamado colimador multilâminas) quecorretamente entregará a radiação ao paciente. Um modelo comum para este problemaé a decomposição de uma matriz em uma soma ponderada de (0-1)-matrizes, chamadassegmentos, em que cada linha pode apenas ter 1s consecutivos. Cada segmento correspondea uma configuração do colimador. Outras restrições aos segmentos podem ser tambémconsideradas. O problema abordado neste trabalho possui três objetivos. O primeiroé minimizar a soma de coeficientes associados aos segmentos. O segundo minimiza aquantidade de segmentos. O terceiro minimiza o deslocamento das lâminas. Este trabalhoinvestiga e apresenta algoritmos para duas variantes do problema: irrestrita e restritapor colisão de lâminas. Um novo algoritmo guloso e aleatório – GRA – foi desenvolvidoinicialmente para a versão irrestrita e então estendido para a versão restrita. Seus resultadosforam comparados a outros algoritmos propostos na literatura, sob os pontos de vistamono e multiobjetivo. No problema irrestrito, os experimentos demonstram que o GRApossui desempenho superior aos demais algoritmos em todos os indicadores analisados. Nocaso restrito, o GRA apresentou resultados competitivos, sobretudo no segundo objetivo,em que teve o melhor desempenho.


  • Mostrar Abstract
  • Algorithms are an essential part of the radiation therapy planning, and under aoptimization point of view, can be divided in three subproblems. Defining the anglesby which radiation will be shot and prescribe a fluence map for each angle are two ofthem. This work investigates the third problem, called realization problem. It consistson defining a sequence of configurations for a device (called multileaf collimator) whichcorrectly delivers the prescribe doses to the patient. A common model for this problem isthe decomposition of a matrix in a weighted sum of (0-1)-matrices, called segments, whoserows only have consecutive ones. Each segment represents a setup of the collimator. Otherconstraints can be also considered. The realization problem has three objectives. The firstone is to minimize the sum of the weights associated to the segments. The second is tominimize the number of segments. The third minimizes the movement of the leaves. Thiswork investigates and present algorithms for two variants of the problem: unconstrainedand constrained. A new greedy and randomized algorithm – GRA – was developed firstlyfor the unconstrained variant and then extended for the constrained variant. Its results wascompared to other algorithms from the literature, under mono and multiobjective pointsof view. On the unconstrained problem, experiments show that GRA outperforms theother algorithms by all measured indicators. On the constrained problem, GRA presentedcompetitive results, specially on the second objective, in which it presented the best results.

10
  • JORGE PEREIRA DA SILVA
  • SGEOL: Uma Plataforma para o Desenvolvimento de Aplicações para Cidades Inteligentes

  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • EVERTON RANIELLY DE SOUSA CAVALCANTE
  • FABIO KON
  • MARKUS ENDLER
  • NELIO ALESSANDRO AZEVEDO CACHO
  • THAIS VASCONCELOS BATISTA
  • Data: 25/11/2021

  • Mostrar Resumo
  • Nas últimas décadas a quantidade de pessoas que vivem nas cidades tem crescido vertiginosamente. Esse cenário impõe vários desafios à gestão da cidade, uma vez que os serviços oferecidos à população (transporte, segurança, saúde, fornecimento de eletricidade, etc) precisam ser escalados rapidamente para dar suporte a um número cada vez maior de habitantes. A realização do conceito de cidades inteligentes surgiu como uma solução promissora para enfrentar os vários desafios resultantes do crescimento urbano. Ambientes de cidades inteligentes são caracterizados pela presença de uma miríade de aplicações que tem por objetivo facilitar a gestão da cidade, contribuindo para a provisão de serviços mais eficientes e, consequentemente, a melhoria da qualidade de vida dos cidadãos. No entanto, desenvolver tais aplicações não é uma tarefa trivial. Em muitos casos os desenvolvedores precisam atender à diversos requisitos complexos de serem implementados. Além disso, para permitir a contextualização e correlação das informações produzidas na cidade, elas precisam ser enriquecidas com informações geográficas que representam o espaço urbano. Nesse sentido, plataformas de cidades inteligentes têm papel fundamental para a concretização desse ambiente. Tais plataformas provêm serviços de alto nível que podem ser facilmente reutilizados pelos desenvolvedores para alavancar o desenvolvimento de aplicações. Nessa perspectiva, esse trabalho apresenta o Smart Geo Layers (SGEOL), uma plataforma escalável para desenvolvimento de aplicações para cidades inteligentes. Além de permitir a integração de dados urbanos com informações geográficas, o SGEOL oferece facilidades para: i) gerenciamento de dados de contexto, ii) integração de dados heterogêneos, iii) suporte semântico; iv) análise e visualização de dados; v) suporte a segurança e privacidade de dados,  etc. Esse trabalho também apresenta experiências de uso real do SGEOL em diferentes cenários, bem como resultados de experimentos computacionais que avaliam seu desempenho e escalabilidade.



  • Mostrar Abstract
  • In the last few decades, the number of people living in cities has grown exponentially. This scenario imposes several challenges to the management of the city, since the services offered to the population (transportation, security, health, electricity supply, etc.) need to be scaled up quickly to support an increasing number of inhabitants. The realization of the concept of smart cities emerged as a promising solution to face the various challenges resulting from urban growth. Smart city environments are characterized by the presence of a myriad of applications that aim to facilitate city management, contributing to the provision of more efficient services and, consequently, improving the quality of life of citizens. However, developing such applications is not a trivial task. In many cases, developers need to meet several complex requirements to be implemented. In addition, to allow contextualization and correlation of information produced in the city, they need to be enriched with geographical information that represents the urban space. In this sense, smart city platforms play a fundamental role in achieving this environment. Such platforms provide high-level services that can be easily reused by developers to leverage application development. In this perspective, this work presents Smart Geo Layers (SGEOL), a scalable platform for developing applications for smart cities. In addition to allowing the integration of urban data with geographic information, SGEOL offers facilities for: i) management of context data, ii) integration of heterogeneous data, iii) semantic support; iv) data analysis and visualization; v) support for data security and privacy, etc. This work also presents experiences of real use of SGEOL in different scenarios, as well as results of computational experiments that evaluate its performance and scalability.

11
  • MÁRIO ANDRADE VIEIRA DE MELO NETO
  • Uma Proposta de Arcabouço para Tolerância a Falhas Multicamadas em Sistemas IoT

  • Orientador : GIBEON SOARES DE AQUINO JUNIOR
  • MEMBROS DA BANCA :
  • EVERTON RANIELLY DE SOUSA CAVALCANTE
  • GIBEON SOARES DE AQUINO JUNIOR
  • NELIO ALESSANDRO AZEVEDO CACHO
  • ROSSANA MARIA DE CASTRO ANDRADE
  • VINICIUS CARDOSO GARCIA
  • Data: 03/12/2021

  • Mostrar Resumo
  • A tolerância a falhas em sistemas IoT é um desafio a ser superado devido à sua com-
    plexidade, dinamicidade e heterogeneidade. Os sistemas IoT são normalmente projetados

    e construídos em camadas, em que cada uma delas possui seus próprios requisitos e es-
    tratégias de tolerância a falhas. No entanto, erros em uma camada podem propagar-se e

    causar efeitos em outras. Portanto, é impraticável considerar uma abordagem de tolerân-
    cia a falhas centralizada para todo um sistema. Consequentemente, é vital considerar a

    colaboração entre várias camadas de maneira a permitir a troca de informações para lidar
    com as falhas. O objetivo deste estudo é propor uma abordagem de tolerância a falhas
    multicamadas, garantindo a interconexão entre as camadas de um sistema IoT, permitindo
    a troca de informações e colaboração para melhorar a dependabilidade desses sistemas.

    Portanto, é definida uma estrutura orientada a eventos chamada FaTEMa (Fault Tole-
    rance Event Manager) que cria um canal de comunicação dedicado para propagar eventos

    relacionados a falhas através dos níveis do sistema. A estrutura implementada auxilia na
    detecção de erros e continuação dos serviços. Além disso, o arcabouço proposto oferece
    pontos de extensão para suportar protocolos de comunicação heterogêneos e permitir o
    desenvolvimento de novos recursos. Os resultados da avaliação empírica demonstraram
    que a introdução do FaTEMa estabeleceu melhorias nos tempos de detecção e resolução
    de erros, consequentemente melhorando a disponibilidade do sistema. Além disso, o uso
    do FaTEMa proporcionou uma melhoria na confiabilidade através da redução do número
    de falhas produzidas.


  • Mostrar Abstract
  • Fault tolerance in IoT systems is challenging to overcome due to its complexity, dy-
    namicity, and heterogeneity. IoT systems are typically designed and constructed in layers.

    Every layer has its requirements and fault tolerance strategies. However, errors in one layer
    can propagate and cause effects on others. Thus, it is impractical to consider a centralized
    fault tolerance approach for an entire system. Consequently, it is vital to consider multiple
    layers in order to enable collaboration and information exchange when addressing fault
    tolerance. The purpose of this study is to propose a multi-layer fault tolerance approach,
    granting interconnection among IoT system layers, allowing information exchange and
    collaboration in order to attain the property of dependability. Therefore, it is defined an
    event-driven framework called FaTEMa (Fault Tolerance Event Manager) that creates a

    dedicated fault-related communication channel in order to propagate events across the le-
    vels of the system. The implemented framework assist with error detection and continued

    service. Additionally, it offers extension points to support heterogeneous communication

    protocols and evolve new capabilities. The empirical evaluation results show that intro-
    ducing FaTEMa provided improvements to the error detection and error resolution time,

    consequently improving system availability. In addition, the use of Fatema provided a
    reliability improvement and a reduction in the number of failures produced.

12
  • THADEU RIBEIRO BENÍCIO MILFONT
  • Grafos Fuzzy Intervalares n-Dimensionais

  • Orientador : BENJAMIN RENE CALLEJAS BEDREGAL
  • MEMBROS DA BANCA :
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • REGIVAN HUGO NUNES SANTIAGO
  • IVAN MEZZOMO
  • MATHEUS DA SILVA MENEZES
  • RENATA HAX SANDER REISER
  • RUI EDUARDO BRASILEIRO PAIVA
  • Data: 03/12/2021

  • Mostrar Resumo
  • Um grafo fuzzy é uma relação fuzzy entre os elementos de um conjunto não vazio, eles são ideais para modelar dados incertos referentes a este conjunto. Os grafos fuzzy aparecem com frequência na literatura, dentre eles, destaca-se os grafos fuzzy de
    Rosenfeld, baseados nos conjuntos fuzzy de Zadeh, e suas extensões, tais como: grafos fuzzy intervalares, grafos fuzzy bi-polares e grafos fuzzy m-polares. As aplicações destes conceitos são vastas: análise de agrupamento, classificação de padrões, teoria de banco de dados, ciências sociais, redes neurais, análise de decisão, entre outras. Assim como os grafos fuzzy, estudos sobre ordens admissíveis e suas extensões, são frequentes. Originalmente, ordens admissíveis foram introduzidas no contexto de conjuntos fuzzy intervalares por H. Bustince e outros, e desde então têm sido amplamente investigadas. Recentemente, esta noção foi estudada em outros tipos de conjuntos fuzzy, como conjuntos fuzzy intuicionistas intervalares, conjuntos fuzzy hesitantes, conjuntos fuzzy multidimensionais e conjuntos fuzzy n-dimensionais. Neste contexto, este trabalho propõe estender os grafos fuzzy de Rosenfeld para os grafos fuzzy n-dimensionais intervalares baseados nos conjuntos fuzzy n-dimensionais, assim como, para os grafos fuzzy n-dimensionais intervalares admissíveis, os quais equipamos com um espaço semi-vetorial ordenado admissível. Apresentamos alguns métodos para gerar ordens admissíveis nos conjuntos fuzzy n-dimensionais e o conceito de funções de agregação n-dimensionais com respeito a uma ordem admissível. Estendemos o conceito de espaço semi-vetorial ordenado em um semi-corpo dos números reais não-negativos para um semi-corpo fraco arbitrário. Definimos em um conjunto de grafos fuzzy n-dimensionais intervalares admissíveis o conceito de espaço semi-vetorial ordenado, com isso, introduzimos neste conjunto o conceito de função de agregação de grafos fuzzy n-dimensional intervalares admissíveis. Várias propriedades destes conceitos foram investigadas, além de apresentar algumas aplicações.


  • Mostrar Abstract
  • A fuzzy graph is a fuzzy relation between the elements of a set, they are ideal for modeling uncertain data about these sets. The fuzzy graphs appear frequently in the literature, among them, stands out the fuzzy graph of Rosenfeld, based on fuzzy sets of
    Zadeh, and its extensions, such as: interval-valued fuzzy graphs, bi-polar fuzzy graphs and m-polar fuzzy graphs. The applications of these concepts are vast: cluster analysis, pattern classification, database theory, social science, neural networks, decision analysis, among others. As well as fuzzy graphs, studies on admissible orders and their extensions are frequent. Originally, admissible orders were introduced in the context of interval-valued fuzzy sets by H. Bustince et al. and since then they have been widely investigated. Recently, this notion has been studied in other types of fuzzy sets, such as interval-valued intuitionistic fuzzy sets, hesitant fuzzy sets, multidimensional fuzzy sets and n-dimensional fuzzy sets. In this context, this work proposes to extend the fuzzy graph of Rosenfeld to interval-valued n-dimensional fuzzy graphs, based on n-dimensional fuzzy sets, as well as, for the admissible interval-valued n-dimensional fuzzy graphs, that we equip with an admissible ordered semi-vector space. We present some methods to generate admissible orders in the n-dimensional fuzzy set and the concept of n-dimensional aggregation functions with respect to an admissible order. We extend the concept of ordered semi-vector space in a semi-field of non-negative real numbers to an arbitrary weak semi-field. We define in a set of admissible interval n-dimensional fuzzy graphs the concept of ordered semi-vector space, whit this, we introduced in this set the concept of admissible interval n-dimensional fuzzy graphs aggregation function. Several properties of these concepts were investigated, in addition to presenting some applications.

2020
Dissertações
1
  • FRANCIMARIA RAYANNE DOS SANTOS NASCIMENTO
  • An experimental investigation of letter identification and scribe predictability in medieval manuscripts

  • Orientador : MARJORY CRISTIANY DA COSTA ABREU
  • MEMBROS DA BANCA :
  • BRUNO MOTTA DE CARVALHO
  • EVERTON RANIELLY DE SOUSA CAVALCANTE
  • MARJORY CRISTIANY DA COSTA ABREU
  • GEORGE DARMITON DA CUNHA CAVALCANTI
  • Data: 16/01/2020

  • Mostrar Resumo
  • Though handwriting might seem archaic today in comparison with typed communication, it is a long-established human activity that has survived into the 21st century. Accordingly, research interest into handwritten documents, both historical and modern, is significant. The way we write has changed significantly over the past centuries. For example, the texts of the Middle Ages were often written and copied by anonymous scribes. The writing of each scribe, known as his or her 'scribal hand' is unique, and can be differentiated using a variety of consciously and unconsciously produced features. Distinguishing between these different scribal hands is a central focus of the humanities research field known as 'palaeography'. This process may be supported and/or enhanced using digital techniques, and thus digital writer identification from historical handwritten documents has also flourished. The automation of the process of recognising individual characters within each scribal hand has also posed an interesting challenge. A number of issues make these digital processes difficult in relation to medieval handwritten documents. These include the degradation of the paper and soiling of the manuscript page, which can make automatic processes difficult. Thus, in this paper, we propose an investigation in both perspectives, character recognition and writer identification, in medieval manuscripts. Our experiments show interesting results, with good accuracy rates.


  • Mostrar Abstract
  • Though handwriting might seem archaic today in comparison with typed communication, it is a long-established human activity that has survived into the 21st century. Accordingly, research interest into handwritten documents, both historical and modern, is significant. The way we write has changed significantly over the past centuries. For example, the texts of the Middle Ages were often written and copied by anonymous scribes. The writing of each scribe, known as his or her 'scribal hand' is unique, and can be differentiated using a variety of consciously and unconsciously produced features. Distinguishing between these different scribal hands is a central focus of the humanities research field known as 'palaeography'. This process may be supported and/or enhanced using digital techniques, and thus digital writer identification from historical handwritten documents has also flourished. The automation of the process of recognising individual characters within each scribal hand has also posed an interesting challenge. A number of issues make these digital processes difficult in relation to medieval handwritten documents. These include the degradation of the paper and soiling of the manuscript page, which can make automatic processes difficult. Thus, in this paper, we propose an investigation in both perspectives, character recognition and writer identification, in medieval manuscripts. Our experiments show interesting results, with good accuracy rates.

2
  • STEFANO MOMO LOSS
  • Orthus: Uma Plataforma Blockchain para Cidades Inteligentes

  • Orientador : NELIO ALESSANDRO AZEVEDO CACHO
  • MEMBROS DA BANCA :
  • WILSON DE SOUZA MELO JUNIOR
  • DANILO CURVELO DE SOUZA
  • FREDERICO ARAUJO DA SILVA LOPES
  • NELIO ALESSANDRO AZEVEDO CACHO
  • THAIS VASCONCELOS BATISTA
  • Data: 05/02/2020

  • Mostrar Resumo
  • Atualmente, o blockchain tem sido amplamente usado para armazenar transações descentralizadas e seguras envolvendo criptomoeda (por exemplo, soluções Bitcoin e Ethereum). Por outro lado, os aplicativos de cidades inteligentes preocupam-se com a forma como os dados e serviços podem ser armazenados e compartilhados com segurança. A este respeito, esta pesquisa investiga o uso da blockchain e identifica um conjunto de requisitos essenciais para atender às necessidades da blockchain no contexto de cidades inteligentes. Com base nisso, foi proposta uma plataforma chamada Orthus para apoiar o uso de blockchain em iniciativas de cidades inteligentes focadas em escalabilidade. Esta tese de mestrado demonstrou um estudo de caso sobre como usar a plataforma proposta no contexto da Iniciativa Cidade Inteligente de Natal, no Brasil, para lidar com o registro de terras. Além disso, ele também compara essa plataforma com outras implementações que usam blockchain em diferentes domínios. Finalmente, esta pesquisa confirma que o uso da tecnologia blockchain tem muito a contribuir para soluções de cidades inteligentes, uma vez que permite a criação de soluções em redes distribuídas, capaz de atender à demanda de toda a população.


  • Mostrar Abstract
  • Currently, blockchain has been widely used to store decentralised and secure transactions involving cryptocurrency (for instance, Bitcoin and Ethereum solutions). On the other hand, smart city applications are concerned about how data and services can be safely stored and shared. In this regard, this research investigates the use of blockchain and pinpoints a set of essential requirements to meet the needs of blockchain for the context of smart cities. Base on that, a platform named Orthus was proposed to support the use of blockchain in smart city initiatives focused on scalability. This master’s thesis demonstrated a case study about how to use the proposed platform in the context of the Natal Smart City Initiative, in Brazil, to handle land registration. Moreover, it also compares this platform with other implementations that use blockchain in different domains. Finally, this research confirms that use of blockchain technology has much to contribute to smart city solutions once it enables the creation of solutions in distributed networks being able to meet the demand of the entire population.

3
  • YURI KELVIN NASCIMENTO DA SILVA
  • Problema do Passeio Lucrativo com Passageiros e Penalidades por Atrasos 

  • Orientador : MARCO CESAR GOLDBARG
  • MEMBROS DA BANCA :
  • MARCO CESAR GOLDBARG
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MATHEUS DA SILVA MENEZES
  • THATIANA CUNHA NAVARRO DE SOUZA
  • Data: 07/02/2020

  • Mostrar Resumo
  • Este trabalho introduz o Problema do Passeio Lucrativo com Passageiros e Penalidades por Atrasos (PPL-PPA). O PPL-PPA é interpretado como um prestador de serviços que possui demandas de clientes a serem atendidas em diferentes localidades. Para cada demanda satisfeita, um valor de bônus é coletado e acrescido no valor total de bônus da jornada de trabalho. As demandas possuem um tempo para serem realizadas e um tempo estimado de início do serviço. A satisfação de uma demanda após seu tempo estimado de início caracteriza um atraso no serviço e, por isso, uma penalidade é imposta reduzindo o valor do bônus a ser coletado pelo serviço prestado de acordo com o tempo de atraso. Ainda, durante sua jornada de trabalho, o prestador de serviços poderá embarcar passageiros no veículo nas localidades das demandas. Cada passageiro embarcado contribuirá com uma parcela para a divisão dos custos de viagem entre todos os ocupantes do veículo em um determinado trecho. Os custos de viagem divididos entre todos não podem exceder o valor de tarifa ofertado por cada passageiro pelo trajeto entre sua origem e destino e o número de passageiros embarcados não deve exceder a capacidade do veículo. Sendo assim, o objetivo do PPL-PPA consiste em encontrar uma rota que maximize o valor de bônus coletados subtraído dos custos de viagem rateados com os passageiros e das eventuais penalidades impostas em razão dos atrasos. Como instrumento de formalização e validação do problema, um modelo de Programação Matemática é proposto e solucionado através de um solver matemático para instâncias de testes geradas para o problema em questão. Uma análise de acoplamento das instâncias é relatada mediante experimentos com métodos heurísticos ad hoc e métodos exatos ad hoc, sendo estes voltados para casos particulares do modelo. Por fim, são propostas três meta-heurísticas evolucionárias visando a eficiência na obtenção de soluções de qualidade.


  • Mostrar Abstract
  • This work introduces a new Traveling Salesman Problem variant called Traveling Salesman Problem with Prize Collecting, Passengers and Penalties for Delays. In this problem, the salesman has, along the graph, potential passengers who need to move between localities. Each boarded passenger will contribute a portion to the division of the travel costs between all the occupants of the vehicle in a certain stretch. In addition, each vertex has an aggregate prize value that may or may not be collected by the salesman during his journey. The prizes have a time for the collection and an estimated minimum time to be collected without a reduction in its value, characterizing the penalty. Thus, the goal is to find a route that maximizes the amount of collected prizes minus the travel costs divided with passengers and any penalties imposed on the prizes. As an instrument of formalization and validation of the problem, a Mathematical Programming model is proposed and solved through a mathematical solver for test instances generated for the problem in question. A coupling analysis of the instances is reported through experiments with ad hoc heuristic methods and exact methods that consider particular cases of the model. Moreover, three evolutionary metaheuristics are proposed aiming the efficiency in obtaining quality solutions

4
  • MARCOS ALEXANDRE DE MELO MEDEIROS
  • Melhorando a Identificação de Bugs a partir da Mineração de Relatórios de Falhas: Um Estudo Empírico

  • Orientador : UIRA KULESZA
  • MEMBROS DA BANCA :
  • EIJI ADACHI MEDEIROS BARBOSA
  • NELIO ALESSANDRO AZEVEDO CACHO
  • RODRIGO BONIFACIO DE ALMEIDA
  • UIRA KULESZA
  • Data: 19/02/2020

  • Mostrar Resumo
  • As informações disponíveis nos relatórios de falhas estão sendo usadas para entender a causa raiz dos erros e melhorar a qualidade geral dos sistemas. No entanto, esses relatórios geralmente levam a uma enorme quantidade de informações, sendo necessário aplicar técnicas que visam consolidar os dados em grupos de acordo com um conjunto de critérios bem definidos. Nesta dissertação, contribuímos com uma personalização de regras que automaticamente localizam e agrupam relatórios de falhas correlacionados (de acordo com seus stack traces) no contexto de sistemas Web de larga escala. Para isso, selecionamos e adaptamos algumas abordagens descritas na literatura sobre o agrupamento de relatórios de falhas e a classificação de arquivos suspeitos por travar o sistema. Em seguida, projetamos e implementamos uma ferramenta de software para identificar e classificar arquivos com erro usando stack traces presentes nos relatórios de falhas. Usamos nossa ferramenta e nossa abordagem para identificar e classificar arquivos com erros, ou seja, arquivos com maior probabilidade de causarem uma falha e que, portanto, necessitam de uma correção. Avaliamos nossa abordagem comparando dois conjuntos de classes e métodos: as classes (métodos) que os desenvolvedores alteraram para corrigir um bug e as classes (métodos) suspeitas de conterem um bugs dentre as que estão presentes nos stack traces dos relatórios de falhas correlacionados.

    Nosso estudo fornece novas evidências acerca do potencial do uso de grupos de relatórios de falhas para indicar corretamente classes e métodos com erro, dentre as que estão presentes nos stack traces. Por exemplo, identificamos com êxito uma classe com erro, com recall variando de 61,4% a 77,3% e precisão variando de 41,4% a 55,5%, considerando o 1, 3, 5 e 10 arquivos suspeitos identificados e classificados por nossa abordagem. A principal implicação de nossa abordagem é que os desenvolvedores podem localizar e corrigir a causa raiz de um relatório de falha considerando algumas classes ou métodos, em vez de revisar milhares de ativos.


  • Mostrar Abstract
  • The information available in crash reports has been used to understand the root cause of bugs and improve the overall quality of systems. Nonetheless, crash reports often lead to a huge amount of information, being necessary to apply techniques that aim to consolidate the crash report data into groups, according to a set of well-defined criteria. In this dissertation, we contribute with customization of rules that automatically find and group correlated crash reports (according to their stack traces) in the context of large scale web-based systems. We select and adapt some approaches described in the literature about crash report grouping and suspicious file ranking of crashing the system. Next, we design and implement a software tool to identify and rank buggy files using stack traces from crash reports. We use our tool and approach to identify and rank buggy files—that is, files that are most likely to contribute to a crash and thus need a fix.

    We evaluate our approach comparing two sets of classes and methods: the classes (methods) that developers changed to fix a bug and the suspected buggy classes (methods) that are present in the stack traces of the correlated crash reports. Our study provides new pieces of evidence of the potential use of crash report groups to correctly indicate buggy classes and methods present in stack traces. For instance, we successfully identify a buggy class with recall varying from 61.4% to 77.3% and precision ranging from 41.4% to 55.5%, considering the top 1, top 3, top 5, and top 10 suspicious buggy files identified and ranked by our approach. The main implication of our approach is that developers can locate and fix the root cause of a crash report considering a few classes or methods, instead of having to review thousands of assets.

5
  • DOUGLAS ARTHUR DE ABREU ROLIM
  • Dashboards para Desenvolvimento de Aplicações e Visualização de Dados para Plataformas de Cidades Inteligentes

  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • EVERTON RANIELLY DE SOUSA CAVALCANTE
  • NELIO ALESSANDRO AZEVEDO CACHO
  • ROSSANA MARIA DE CASTRO ANDRADE
  • THAIS VASCONCELOS BATISTA
  • Data: 04/03/2020

  • Mostrar Resumo
  • O uso massivo de dispositivos interconectados por meio de esquemas de endereçamento exclusivos, capazes de interagir uns com os outros e com seus vizinhos para alcançar objetivos comuns caracterizam o paradigma da Internet das Coisas (IoT). A aplicação deste paradigma da IoT na gestão de assuntos públicos, como forma de resolver os problemas atuais das cidades como a escassez de recursos, poluição, preocupações com a saúde, congestionamentos, entre outros, realiza as chamadas Cidades Inteligentes. Entretanto, faz-se necessário enfrentar vários importantes desafios relacionados com a necessidade de integrar vários dispositivos, que usam diferentes tipos de protocolos e não seguem um padrão comum. Para enfrentar esse problema, plataformas de middleware têm surgido como solução promissoras para facilitar o desenvolvimento de aplicações, provendo interoperabilidade para possibilitar a integração de dispositivos, pessoas, sistemas e dados, e uma série de serviços adicionais necessários no contexto de cidades inteligentes. Em especial, plataformas para cidades inteligentes devem considerar  a existência de informações geográficas do espaço urbano e outros aspectos relacionados ao contexto ao qual elas estão inseridas. No entanto, grande parte das plataformas de middleware para esse cenário: (i) não dispõem de interfaces de alto nível que facilitem o desenvolvimento de aplicações para cidades inteligentes; e (ii) devem prover uma interface para organização da exibição dos dados para os usuários, tendo em vista a grande quantidade e a variedade de dados que são processadas e armazenadas em plataformas para cidades inteligentes. Este trabalho: (i) propõe uma arquitetura para a interface de plataformas para cidades inteligentes que considere dados georreferenciados; (ii)  implementa tal arquitetura no contexto do middleware SGeoL (Smart Geo Layers), incluindo interfaces de dashboards específicas para desenvolvedores de aplicações e para usuários interessados em aplicações construídas usando a plataforma. O (SGeoL) é uma plataforma que visa aliar dados georreferenciados, soluciona problemas de interoperabilidade e heterogeneidade, e é aplicado atualmente no contexto da cidade de Natal. 



  • Mostrar Abstract
  • The massive use of interconnected devices through unique addressing schemes capable of interacting with each other and their neighbors to achieve common goals characterizes the IoT paradigm. The application of this IoT paradigm in public affairs management, as a way to solve the current problems of cities such as resource scarcity, pollution, health concerns, congestion, among others, makes the so-called Smart Cities. However, it is necessary to address several major challenges related to the need to integrate multiple devices that use different types of protocols and do not follow a common pattern. To address this problem, middleware platforms have emerged as a promising solution to facilitate application development, providing interoperability to enable the integration of devices, people, systems and data, and a host of additional services needed in the context of smart cities. In particular, smart city platforms should consider the existence of geographic information on urban space and other aspects related to the context to which they are embedded. However, most middleware platforms for this scenario: (i) do not have high-level interfaces that facilitate smart city application development; and (ii) provide an interface for organizing data display for users, given the large amount and variety of data that is processed and stored on smart city platforms. This paper: (i) proposes an architecture for the smart city platform interface that considers georeferenced data; (ii) implements such architecture in the context of Smart Geo Layers (SGeoL) middleware, including specific dashboard interfaces for application developers and users interested in applications built using the platform. (SGeoL) is a platform that combines georeferenced data, solves interoperability and heterogeneity problems, and is currently applied in the context of the city of Natal.

6
  • LUCAS CRISTIANO CALIXTO DANTAS
  • Um Laboratório Virtual para Desenvolvimento e Experimentação de Aplicações de Internet das Coisas

  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • THAIS VASCONCELOS BATISTA
  • EVERTON RANIELLY DE SOUSA CAVALCANTE
  • FREDERICO ARAUJO DA SILVA LOPES
  • KIEV SANTOS DA GAMA
  • Data: 20/03/2020

  • Mostrar Resumo
  • O desenvolvimento de aplicações para Internet das Coisas (IoT) vem enfrentando problemas importantes, como a heterogeneidade inerente aos dispositivos em termos de recursos, poder de computação, protocolos de rede e requisitos de energia. Para enfrentar esse desafio,  plataformas de middleware da IoT foram propostas visando abstrair as especificidades dos dispositivos, promovendo a interoperabilidade entre eles e facilitando o desenvolvimento de aplicações. Uma dessas propostas é o FIWARE, uma plataforma aberta e genérica desenvolvida na Comunidade Europeia para alavancar o desenvolvimento de aplicações da internet do futuro. Dado um conjunto de componentes FIWARE necessários para o desenvolvimento de uma aplicação específica, sua implantação e configuração podem ser feitas manualmente ou usando uma abordagem baseada em contêiner. No entanto, a configuração de um ambiente composto pelos principais componentes do FIWARE não é um processo trivial. Este trabalho propõe o FIWARE-Lab@RNP, um laboratório virtual da Web para prototipar e experimentar aplicações com base na plataforma FIWARE. A principal contribuição do FIWARE-Lab@RNP é permitir o uso dos recursos do FIWARE de maneira transparente, aliviando os usuários da necessidade de implantar e operar uma instância do FIWARE em seu ambiente de desenvolvimento. O laboratório virtual fornece funcionalidades para criar, configurar e gerenciar facilmente instâncias de componentes, dispositivos, entidades de contexto e serviços do FIWARE, enquanto tenta minimizar a curva de aprendizado referente a essas tarefas.


  • Mostrar Abstract
  • The development of Internet of Things (IoT) applications facing important issues such as the inherent device heterogeneity. in terms of capabilities, computing power, network protocols, and energy requirements. To address this challenge, IoT middleware platforms have been proposed to abstract away the specificities of such devices, promoting interoperability among them, and easing application development. One of these proposals is FIWARE, an open, generic platform developed in the European Community to leverage the development of Future Internet applications. Given a set of FIWARE components required for a specific application under development, their deployment and configuration can be made either manually or using a container-based approach. However, setting up an environment composed by the main FIWARE components might sometimes not be a trivial process. This work proposes FIWARE-Lab@RNP, a Web virtual laboratory for prototyping and experimenting applications based on the FIWARE platform. The main concern of FIWARE-Lab@RNP is enabling the use of FIWARE resources through the Internet in a transparent way, thus relieving users from the need of deploying and operating a FIWARE instance on their development or owned environment. The virtual laboratory provides functionalities for easily creating, configuring, and managing instances of FIWARE components, devices, context entities, and services while attempting to minimize the learning curve regarding these tasks.

7
  • GUILHERME DUTRA DINIZ DE FREITAS
  • Investigating the Relationship Between Continuous Integration and Software Quality Metrics: An Empirical Study

  • Orientador : UIRA KULESZA
  • MEMBROS DA BANCA :
  • UIRA KULESZA
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • DANIEL ALENCAR DA COSTA
  • RODRIGO BONIFACIO DE ALMEIDA
  • Data: 26/03/2020

  • Mostrar Resumo
  • A qualidade do software é um atributo essencial para o sucesso de todo projeto de software, sendo uma das principais responsáveis pela competitividade na indústria de software. Integração contínua é uma prática de desenvolvimento de software bastante disseminada na indústria e na literatura por melhorar a qualidade do software. Nesta dissertação, realizamos uma série de estudos para investigar a relação entre integração contínua e métricas de qualidade de código que não foram exploradas por estudos já realizados. Para isso, analisamos se a adoção ou a maturidade de adoção de integração contínua estão relacionadas com melhores métricas de qualidade de código. Como resultado, encontramos que não existem evidências estatísticas que a adoção e a maturidade de integração contínua se relacione com tais métricas de qualidade de código. Por outro lado, descobrimos que a cobertura dos testes é a prática de integração contínua que mais afeta parte das métricas investigadas. A integração de builds com mais frequência não está relacionada a nenhuma das métricas estudadas. Além disso, descobrimos que projetos com builds mais rápidos tendem a ter melhor estruturação entre classes e pacotes, mas tendem a ter maior acoplamento. Também observamos que projetos com correções rápidas de builds tendem a ter menores hierarquias de herança e uma melhor estruturação das classes. Em relação à cobertura de teste, os projetos com maior cobertura de teste tendem a ter uma menor complexidade intrínseca de operações, mas uma estrutura de operação pior se comparada aos projetos com uma menor cobertura de teste.


  • Mostrar Abstract
  • Software quality is an essential attribute for the success of every software project. It is a significant element to the competitiveness of the software industry. Meanwhile, continuous integration is known as a software development practice that can contribute to improving the software quality. In this research, we conduct a series of studies that investigate the relationship between continuous integration and software quality code metrics that have not been explored before. For this purpose, we looked at whether continuous integration adoption and maturity sharing are related to better code quality metrics. As a result, we found that there is no statistical evidence that CI adoption and maturity are related to code quality metrics. We found that test coverage is the continuous integration core practice that most impacts object-oriented software metrics. On the other hand, integrating builds frequently is not related to any of the studied metrics. Additionally, we found that projects with faster builds tend to have better system structure between classes and packages but they also have higher coupling. We also observed that projects with fast build fixes tend to have a better hierarchy and class structuring. Regarding test coverage, projects with higher test coverage tend to have a lower intrinsic operation complexity but a worse operation structuring comparing with projects with lower test coverage.

8
  • DANILO RODRIGO CAVALCANTE BANDEIRA
  • Um estudo sobre o impacto da combinação  de escrita e dinâmica  de pressionamento de teclado na previsão de gênero e estado emocional

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • MEMBROS DA BANCA :
  • ANNE MAGALY DE PAULA CANUTO
  • DIEGO SILVEIRA COSTA NASCIMENTO
  • MARJORY CRISTIANY DA COSTA ABREU
  • Data: 03/04/2020

  • Mostrar Resumo
  • O uso de informações de soft biometric como ferramenta auxiliar na identificação do usuário já é bem conhecido na literatura. Porém, não é o único uso possível para dados biométricos, pois esses dados podem ser adequados para a obtenção de informações de baixo nível do usuário que não estejam relacionadas apenas à sua identidade. Gênero, orientação da mão e estado emocional são alguns exemplos, que podem ser chamados de dados de soft biometric. É muito comum encontrar trabalhos utilizando modalidades fisiológicas para previsão de alguma informação de soft biometrics, mas as modelidades de biometrias comportamentais são frequentemente negligenciadas. Duas modalidades comportamentais possíveis que nem sempre são encontrados na literatura são a dinâmica das teclas e a caligrafia assinatura, que pode ser usada sozinha para prever o sexo dos usuários, mas não em nenhum tipo decenário de combinação. Para preencher esse espaço, este trabalho tem como objetivo investigar se oa combinação dessas duas modalidades biométricas pode afetar a precisão da previsão de gênero e estados emocionais e como essa combinação deve ser feita.


  • Mostrar Abstract
  • The use of soft biometrics as an auxiliary tool on user identification is already well known.
    It is not, however, the only use possible for biometric data, as such data can be adequate to
    get low level information from the user that are not only related to his identity. Gender,
    hand-orientation and emotional state are some examples, which it can be called softbiometrics.
    It is very common to find work using physiologic modalities for soft-biometric
    prediction, but the behavioural data is often neglected. Two possible behavioural modalities
    that are not often found in the literature are keystroke dynamics and handwriting
    signature, which can be seen used alone to predict the users gender, but not in any kind of
    combination scenario. In order to fill this space, this study aims to investigate whether the
    combination of those two different biometric modalities can impact the gender prediction
    accuracy, and how this combination should be done.

9
  • PEDRO VICTOR BORGES CALDAS DA SILVA
  • Facilitando o desenvolvimento de Aplicações de Internet das Coisas baseadas no FIWARE com o IoTVar
  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • EVERTON RANIELLY DE SOUSA CAVALCANTE
  • ROSSANA MARIA DE CASTRO ANDRADE
  • THAIS VASCONCELOS BATISTA
  • Data: 15/07/2020

  • Mostrar Resumo
  • A crescente popularidade da Internet das Coisas (IoT) levou a disponibilização de uma infinidade de dispositivos altamente heterogêneos e geograficamente dispersos. Nos últimos anos, as plataformas e middleware de IoT foram integrados ao ecossistema de IoT para lidar com essa heterogeneidade, promovendo interoperabilidade e facilitando o desenvolvimento de aplicações. IoTVar e FIWARE são exemplos de soluções que fornecem serviços para atingir esses objetivos. Entretanto, desenvolver uma aplicação sobre o FIWARE requer um alto nível de conhecimento da plataforma, além de ser uma tarefa demorada e propensa a erros. Por outro lado, o IoTVar fornece um alto nível de abstração para gerenciar interações entre aplicações de IoT e plataformas de IoT subjacentes, permitindo que os desenvolvedores detectem facilmente dispositivos e atualizem dados de contexto com baixo custo de desenvolvimento em termos de linhas de código. Este trabalho apresenta a integração entre o middleware IoTVar e a plataforma FIWARE, oferecendo aos desenvolvedores de aplicações a possibilidade de declarar variáveis IoT FIWARE no lado do cliente através da IoTVar. Portanto, eles podem usar automaticamente sensores mapeados cujos valores são atualizados de forma transparente com as observações do sensor. A integração entre IoTVar e FIWARE foi avaliada através de uma avaliação de esforço de desenvolvimento comparando linhas de código usadas para declarar e gerenciar variáveis de IoT, bem como experimentos para medir a sobrecarga causada pela IoTVar em termos de CPU, memória e bateria.


  • Mostrar Abstract
  • The rising popularity of the Internet of Things (IoT) has led to a plethora of highly heterogeneous, geographically-dispersed devices. In recent years, IoT platforms and middleware have been integrated into the IoT ecosystem for tackling such a heterogeneity, promoting interoperability, and making application development easier. IoTVar and FIWARE are examples of solutions that provide services to accomplish these goals. However, developing an application atop FIWARE requires a high-level of knowledge of the platform, besides being a time consuming, error prone task. On the other hand, IoTVar provides a high abstraction level to manage interactions between IoT applications and underlying IoT platforms, thus enabling developers to easily discover devices and transparently update context data at low development cost in terms of lines of code. This work presents the integration between the IoTVar middleware and FIWARE platforms, providing application developers with the possibility to declare FIWARE IoT variables at the client side through IoTVar. Therefore, they become able to automatically use mapped sensors whose values are transparently updated with sensor observations. The integration between IoTVar and FIWARE was evaluated through a development effort assessment comparing used lines of code to declare and manage IoT variables, as well as experiments to measure the overhead caused by IoTVar in terms of CPU, memory and battery.

10
  • RENATO MESQUITA SOARES
  • Product Backlog Orientado a Metas em Projetos Scrum para Fundamentar as Tomadas de Decisões do Product Owner

  • Orientador : MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • MEMBROS DA BANCA :
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • FERNANDO MARQUES FIGUEIRA FILHO
  • ISABEL DILLMANN NUNES
  • FERNANDA MARIA RIBEIRO DE ALENCAR
  • Data: 27/07/2020

  • Mostrar Resumo
  • No Framework Scrum, o Product Owner (PO) assume o papel central no processo de desenvolvimento, sendo o encarregado por fazer a comunicação entre o cliente e os desenvolvedores. Nessa intermediação, ele gerencia o Product Backlog, que mantém uma lista de itens a serem desenvolvidos, correspondentes às necessidades do cliente. Diante disso, a academia tem explorado os desafios do PO, principalmente relacionados às atividades de planejamento onde, nesse contexto, a tomada de decisão é vista como a sua tarefa mais importante. Porém, a falta de informações estruturadas e que fundamentem as suas escolhas, faz com que o mesmo, por muitas vezes, tome decisões equivocadas ou se omita dessa responsabilidade. Na Engenharia de Requisitos Orientada a Metas, os requisitos são descritos a partir das metas organizacionais dos stakeholders e, segundo a literatura, a sua especificação pode trazer diversos benefícios em termos de capacidade de organização da informação. A maioria dos projetos Scrum utiliza histórias de usuário para especificar os requisitos e, embora elas contenham a definição da meta, a mesma não é evidenciada no processo de desenvolvimento. Isto posto, este trabalho tem como objetivo proporcionar uma apresentação das informações organizacionais, inerentes ao produto ou serviço desejado, em uma disposição que fundamente e oriente as tomadas de decisões do PO. Para tal fim, foi proposto um artefato, o Goals Driven Product Backlog, que busca evidenciar as metas e seus relacionamentos com as histórias de usuário. O estudo avaliativo realizado encontrou evidências de que o artefato proporciona informações mais estruturadas ao PO e, consequentemente, contribui para as suas tomadas de decisões.



  • Mostrar Abstract

  • In the Scrum Framework, the Product Owner (PO) takes the central role within the development process, being responsible for communicating between the customer and the developers. In this intermediation, he manages the Product Backlog, which maintains a list of items to be developed, corresponding to the customer's needs. In this sense, the academy has explored the challenges of the PO, mainly in the planning activities where, in this context, the decision making is seen as his most important task. However, the lack of structured information that can support their choices, makes them, many times, make wrong decisions or omit this responsibility. In Goal-Oriented Requirements Engineering, the requirements are described from the stakeholders organizational goals and, according to the literature, their definition can bring several benefits in terms of information organization capacity. Most Scrum projects use user stories to specify requirements and, although they contain the definition of the goal, she is not evidented in the development process. That said, this work aims to provide a presentation of the organizational information, inherent to the desired product or service, in a provision that justifies and guides the decision making of the PO. To this end, an artifact, the Goals Driven Product Backlog, was proposed, which seeks to highlight the goals and their relationships with user stories. The evaluative study carried out found evidence that the artifact provides more structured information to the PO and, consequently, contributes to his decision making.

     


11
  • JOSÉ LUCAS SANTOS RIBEIRO
  • Servindo modelos de Machine Learning com uma Arquitetura Baseada em Serverless

  • Orientador : NELIO ALESSANDRO AZEVEDO CACHO
  • MEMBROS DA BANCA :
  • CARLOS EDUARDO DA SILVA
  • EVERTON RANIELLY DE SOUSA CAVALCANTE
  • FREDERICO ARAUJO DA SILVA LOPES
  • NELIO ALESSANDRO AZEVEDO CACHO
  • Data: 29/07/2020

  • Mostrar Resumo
  • Soluções inteligentes para classificação de dados que fazem uso de Machine Learning estão em um momento de ascensão. A área de análise de dados está atraindo cada vez mais desenvolvedores e pesquisadores, porém as soluções desenvolvidas precisam ser modularizadas em componentes bem definidos para ser possível paralelizar algumas etapas e obter um bom desempenho na etapa de execução. A partir dessa motivação, este trabalho propõe uma arquitetura genérica para classificação de dados, nomeada Machine Learning in Microservices Architecture (MLMA), que pode ser reproduzida em um ambiente de produção. Além disso é apresentado a utilização da arquitetura em um projeto que faz classificação multi-label de imagens para recomendar pontos turísticos ao usuário e uma validação do uso de serverless para servir modelos de Machine Learning.


  • Mostrar Abstract
  • Smart solutions for data classification data that make use of Deep Learning are in a moment of ascension. The data analysis area is attracting more and more developers and researchers, but the solutions developed need to be modularized into well-defined components in order to be able to parallelize some stages and obtain a good performance in the execution stage. From this motivation, this work presents a generic architecture for data classification, named Machine Learning in Microservices Architecture (MLMA), that can be reproduced in a production environment. In addition, the use of the architecture is presented in a project that makes multi-label classification of images to recommend tourist attractions and validates the use of serverless to serve models of Machine Learning.

12
  • THALES AGUIAR DE LIMA
  • Investigating fuzzy methods for multilinguals peaker identification

  • Orientador : MARJORY CRISTIANY DA COSTA ABREU
  • MEMBROS DA BANCA :
  • ALTAIR OLIVO SANTIN
  • MARJORY CRISTIANY DA COSTA ABREU
  • MONICA MAGALHAES PEREIRA
  • Data: 27/08/2020

  • Mostrar Resumo
  • Speech is a crucial ability for humans to interact and communicate.
    Speech-based technologies are becoming more popular with speech interfaces,
    real-time translation, and budget healthcare diagnosis.  Thus, this work aims
    to explore an important but under-investigated topic on the field: multilingual
    speech recognition.  We employed three languages: English, Brazilian
    Portuguese, and Mandarin. To the best of our knowledge, those three languages
    were not compared yet.  The objectives are to explore Brazilian Portuguese in
    comparison with the other two more well-investigated languages, by verifying
    speaker recognition robustness in multilingual environments, and further
    investigate fuzzy methods. We have performed an analysis for text-independent
    speaker identification on closed-set using log-Energy, 13-MFCCs, Deltas, and
    Double Deltas with four classifiers.  The closed-set text-independent speaker
    identification results indicated that this problem presents some robustness on
    multilingual environments, since adding a second language, it degrades the
    accuracy by 5.45\%, and 5.32\% for a three language dataset using an SVM
    classifier.


  • Mostrar Abstract
  • Speech is a crucial ability for humans to interact and communicate.
    Speech-based technologies are becoming more popular with speech interfaces,
    real-time translation, and budget healthcare diagnosis.  Thus, this work aims
    to explore an important but under-investigated topic on the field: multilingual
    speech recognition.  We employed three languages: English, Brazilian
    Portuguese, and Mandarin. To the best of our knowledge, those three languages
    were not compared yet.  The objectives are to explore Brazilian Portuguese in
    comparison with the other two more well-investigated languages, by verifying
    speaker recognition robustness in multilingual environments, and further
    investigate fuzzy methods. We have performed an analysis for text-independent
    speaker identification on closed-set using log-Energy, 13-MFCCs, Deltas, and
    Double Deltas with four classifiers.  The closed-set text-independent speaker
    identification results indicated that this problem presents some robustness on
    multilingual environments, since adding a second language, it degrades the
    accuracy by 5.45\%, and 5.32\% for a three language dataset using an SVM
    classifier.

13
  • FELLIPE MATHEUS COSTA BARBOSA
  • Medição Precisa de Áreas de Feridas Crônicas Usando Structure From Motion

  • Orientador : BRUNO MOTTA DE CARVALHO
  • MEMBROS DA BANCA :
  • BRUNO MOTTA DE CARVALHO
  • ANNE MAGALY DE PAULA CANUTO
  • LUIZ MARCOS GARCIA GONCALVES
  • RAFAEL BESERRA GOMES
  • VERONICA TEICHRIEB
  • Data: 23/10/2020

  • Mostrar Resumo
  • As feridas crônicas são úlceras que têm um processo de cicatrização difícil ou quase
    interrompido, levando a um risco aumentado de complicações de saúde, como amputações
    e infecções. A medição precisa de áreas quantitativas é de grande importância em ensaios
    clínicos, análise patológica de feridas e atendimento diário ao paciente. Os métodos manuais
    e 2D não podem resolver os problemas causados pelas curvaturas do corpo humano e
    diferentes ângulos da câmera. Este trabalho propõe o uso de uma metodologia não invasiva
    para realizar a reconstrução 3D da superfície do corpo humano para mensuração de
    áreas de feridas, que combina segmentação de imagem, Structure from Motion (SfM) com
    diferentes descritores, SIFT, SURF, ORB e BRIEF e reconstrução de malha para obter
    uma representação fidedigna da superfície da pele. Os resultados mostram que medidas
    precisas de áreas de superfícies 3D podem ser obtidas a partir de imagens adquiridas com
    um smartphone usando a metodologia proposta, com erros médios de 1,7% para o SIFT,
    3,6% para o SURF, 6,4% para o ORB e 20,8% para o BRIEF, usando uma configuração
    de 10 imagens, enquanto o erro médio para as medições 2D foi de 32,7%, claramente
    demonstrando a superioridade do método 3D.


  • Mostrar Abstract
  • Chronic wounds are ulcers that have a difficult or almost interrupted healing process,
    leading to an increased risk of health complications, such as amputations and changes. The
    need for quantitative areas is of great importance in clinical trials, pathological analysis of
    wounds and daily patient care. Manual and 2D manuals cannot solve the problems caused
    by the curvatures of the human body and different camera angles. This work proposes
    the use of a non-invasive methodology to perform 3D reconstruction of the human body
    surface to measure wound areas, which combines a combined image, Structure from Motion
    (SfM) with different descriptors, SIFT, SURF, ORB and BRIEF and mesh reconstruction
    to obtain a reliable representation of the skin surface. The results show that accurate
    measurements of 3D surface areas can be obtained from images acquired with a smartphone
    using the proposed methodology, with average errors of 1.7% for SIFT, 3.6% for SURF,
    6.4% for ORB and 20.8% for BRIEF, using a configuration of 10 images, while the average
    error for 2D occurrences was 32.7%, clearly pointing to the superiority of the 3D method.

14
  • LARYSSE SAVANNA IZIDIO DA SILVA
  • Um Componente de Consulta Semântica para Cidades Inteligentes

  • Orientador : NELIO ALESSANDRO AZEVEDO CACHO
  • MEMBROS DA BANCA :
  • FREDERICO ARAUJO DA SILVA LOPES
  • NELIO ALESSANDRO AZEVEDO CACHO
  • RENATA GALANTE
  • THAIS VASCONCELOS BATISTA
  • Data: 05/11/2020

  • Mostrar Resumo
  • Cidades inteligentes são compostas por diversos sistemas interconectados, destinados a promover uma melhor gestão dos recursos urbanos e naturais das cidades, contribuindo assim para a melhoria da qualidade de vida dos cidadãos. Os dados são de grande importância para as cidades inteligentes, pois contribuem significativamente para o processo de tomada de decisões estratégicas para o espaço urbano. Contudo, tal cenário é tipicamente caracterizado pela alta heterogeneidade das fontes de dados tornando a pesquisa de informações significativas mais complexa. Para lidar com essas características, ontologias têm sido utilizadas em conjunto com o Linked Data para representar semanticamente as informações, inferir novas informações dos dados existentes e integrar efetivamente as informações conectadas de diferentes fontes. Esse cenário requer uma estratégia de gerenciamento de dados que inclua mecanismos eficientes para suportar a filtragem de informações e a descoberta de conhecimento. Nesse contexto, este trabalho propõe um componente de busca a dados semânticos baseado na representação de informações georreferenciadas em cidades inteligentes por meio de ontologias e dados vinculados. A solução proposta foi aplicada a dados educacionais georreferenciados de uma cidade para a realização de inferência de novas informações não explícitas dos dados e relacionamentos existentes.


  • Mostrar Abstract
  • Smart cities are composed of several interconnected systems, designed to promote better management of urban and natural resources in cities, thus contributing to improving the quality of life of citizens. Data is of great importance for smart cities, as they significantly contribute to the strategic decision-making process for urban space. However, such a scenario is typically characterized by the high heterogeneity of data sources making the search for significant information more complex. To deal with these characteristics, ontologies have been used in conjunction with Linked Data to semantically represent information, infer new information from existing data and effectively integrate connected information from different sources. This scenario requires a data management strategy that includes efficient mechanisms to support information filtering and knowledge discovery. In this context, this work proposes a search component to semantic data based on the representation of georeferenced information in smart cities through ontologies and linked data. The proposed solution was applied to geo-referenced educational data from a city to infer new non-explicit information from existing data and relationships.

15
  • DOUGLAS BRAZ MACIEL
  • Gerenciamento e Orquestração de Slices de Rede Elásticos em Domínios Definidospelo NECOS LSDC

  • Orientador : AUGUSTO JOSE VENANCIO NETO
  • MEMBROS DA BANCA :
  • AUGUSTO JOSE VENANCIO NETO
  • CHRISTIAN RODOLFO ESTEVE ROTHENBERG
  • MARCO VIEIRA
  • THAIS VASCONCELOS BATISTA
  • Data: 30/11/2020

  • Mostrar Resumo
  • O NECOS (do inglês Novel Enablers for Cloud Slicing) é um projeto de pesquisa e desenvolvimento fomentado pela 4a chamada colaborativa entre Brasil e Europa do Horizon 2020 (EUB-01-2017: Cloud Computing}. O projeto NECOS foi proposto com a finalidade de tratar das atuais limitações existentes no âmbito da computação em nuvem, de forma a oferecer suporte às demandas de novos serviços e verticais. A solução proposta pelo NECOS é baseada em um novo conceito chamado de nuvens definidas por fatias leves (LSDC, do inglês Lightweight Slice Defined Cloud). O LSDC é uma abordagem que considera ferramentas leves capazes voltadas para o gerenciamento e orquestração de recursos que, de modo que sejam combinados e agregados para aprovisionar fatias de rede e cloud fim a fim (denominado Cloud-Network Slicing). Diante disto, este trabalho propõe um conjunto de blocos de construção na arquitetura NECOS voltados ao gerenciamento e orquestração de partes network slices que compõe instâncias cloud-network slice ativas, ou a serem ativadas, em domínios definidos pela plataforma NECOS, na perspectiva de prover conectividade fim a fim com recursos garantidos e alto nível de isolamento pela exploração do conceito de e Virtualização de Funções de Redes (NFV, do inglês Network Function Virtualization). Ademais, os blocos de construção seguem o paradigma de Redes Softwarizadas como habilitador chave para o controle dos recursos automático e em tempo de execução, visando garantir Qualidade de Serviço (QoS, do inglês Quality of Service) e resiliência ao nível dos network-slices. A solução proposta será avaliada em uma bancada de testes laboratorial desenvolvida nas premissas do Laboratório do Grupo de Pesquisa em Serviços e Aplicações de Internet do Futuro (REGINA-Lab, do inglês Research Group on Future Internet Service and Applications Lab), que hospeda toda a plataforma NECOS e os blocos de construção propostos neste trabalho de mestrado. Uma avaliação preliminar foi realizada sob experimentos que consideram um ambiente real definido por cloud-network slices NECOS, sugerindo que esta abordagem se apresenta como uma solução viável.


  • Mostrar Abstract
  • The Novel Enablers for Cloud Slicing (NECOS) project is fostered by the 4th Horizon 2020 Collaborative Call between Brazil and Europe (EUB-01-2017: Cloud Computing}. The NECOS project address existing cloud computing and networking limitations to support the heterogeneous demands of new services and verticals. The solution proposed by NECOS is based on a new concept called Lightweight Slice Defined Cloud (LSDC), which considers lightweight tools capable for Management and Orchestration (MANO) of resources that are combined and aggregated to provide end-to-end cloud- and network-level slices (called Cloud-Network Slicing). This Masters research proposes a set of building blocks that extends the NECOS architecture with MANO of network-slice parts composing active or to be activated, cloud-network slice instances in domains defined by the NECOS platform so that provisioning end-to-end resource-guaranteed connectivity and with high-level isolation by exploring the Network Function Virtualization (NFV) concept. In addition, the proposed building blocks follow the Network Softwarization paradigm for enabling automatic resource control at the running time to ensure Quality of Service (QoS) and network-slice resiliency. The proposed solution will be evaluated in a lab-premised testbed under the Future Internet Services and Applications Research Group (REGINA-Lab) Laboratory, whereby the entire Internet NECOS platform participates, along with the building blocks proposed in this Master dissertation. A preliminary evaluation was performed under experiments that consider a real environment defined by NECOS cloud-network slices, suggesting that this approach presents itself as a viable solution.

16
  • IASLAN DO NASCIMENTO PAULO DA SILVA
  • Arquitetura de Microsserviços para Processamento de Imagens Relevantes em Evidências de Crimes Digitais

  • Orientador : BRUNO MOTTA DE CARVALHO
  • MEMBROS DA BANCA :
  • BRUNO MOTTA DE CARVALHO
  • DANIEL SABINO AMORIM DE ARAUJO
  • FRANCISCO DANTAS DE MEDEIROS NETO
  • GIBEON SOARES DE AQUINO JUNIOR
  • Data: 21/12/2020

  • Mostrar Resumo
  • Forense digital é um ramo da ciência da computação que se utiliza de técnicas computacionais para analisar evidências criminais com mais velocidade e precisão. No contexto do sistema de justiça brasileiro, durante uma investigação criminal, os especialistas forenses extraem, decodificam e analisam as evidências coletadas para permitir que o promotor público faça exigências legais para uma acusação. Esses especialistas têm um tempo muito curto a análise para encontrar evidências criminais pode levar muito tempo. Para resolver esse problema, este trabalho propõe ARTEMIS (A micRoservice archiTecturE for images in criMe evIdenceS ou Arquitetura de microsserviços para imagens em evidencias criminais) uma arquitetura para classificação de grandes quantidades de arquivos de imagem presentes em evidências usando softwares de código aberto. O módulo de classificação de imagens contém alguns classificadores pré-treinados, considerando a necessidade de analistas forenses do MPRN (Ministério Público do Rio Grande do Norte).Foram construídos modelos para identificar tipos específicos de objetos com por exemplo: armas de fogo, munição, carteiras de identidade brasileiras, documentos de texto, capturas de tela de celular e nudez. Os resultados obtidos mostram que o sistema obteve boa precisão na maioria dos casos. Isso é extremamente importante no contexto desta pesquisa, onde os falsos positivos devem ser evitados, a fim de economizar tempo de trabalho dos analistas. Além disso a arquitetura proposta foi capaz de acelerar o processo de analise da evidência.


  • Mostrar Abstract
  • Digital forensics is a branch of computer science that uses computational techniques to analyze criminal evidence with greater speed and accuracy. In the context of the Brazilian justice system, during a criminal investigation, forensic specialists extract, decode, and analyze the evidence collected to allow the prosecutor to make legal demands for a prosecution. These experts have a very short time to analyze to find criminal evidence can take a long time. To solve this problem, this paper proposes ARTEMIS (A micRoservice archiTecturE for imagesin criMe evIdenceS or Microservice Architecture for images in criminal evidence) an architecture for classifying large amounts of image files present in evidence using open source software. The image classification module contains some pre-trained classifiers, considering the need of foren-ses analysts from the MPRN (Rio Grande do Norte Public Ministry). Models were built to identify specific types of objects with for example: firearms, ammunition, Brazilian ID cards, text documents, cell phone screen captures enudez. The results obtained show that the system obtained good precision in most cases. This is extremely important in the context of this research, where false positives should be avoided in order to save analysts' work time. In addition, the proposed architecture was able to accelerate the process of evidence analysis.

Teses
1
  • ROBERCY ALVES DA SILVA
  • Recomendação automática da estrutura de comitês de classificadores usando meta-aprendizado

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • MEMBROS DA BANCA :
  • ANNE MAGALY DE PAULA CANUTO
  • DANIEL SABINO AMORIM DE ARAUJO
  • DIEGO SILVEIRA COSTA NASCIMENTO
  • GEORGE DARMITON DA CUNHA CAVALCANTI
  • MARJORY CRISTIANY DA COSTA ABREU
  • Data: 07/02/2020

  • Mostrar Resumo
  • Atualmente, estamos constantemente preocupados em classificar coisas, pessoas e a tomar decisões, que quando nos deparamos com problemas com um alto grau de complexidade, tendemos a buscar opiniões de outras pessoas, geralmente de pessoas que tenham certo conhecimento ou até mesmo, na medida do possível, sejam especialistas no domínio do problema em questão, de forma que nos auxiliem efetivamente no nosso processo de tomada de decisão. Em uma analogia às estruturas de classificação, temos um comitê de pessoas e ou especialistas (classificadores) que toma decisões e, com base nestas respostas, uma decisão final é tomada (agregador). assim, podemos dizer que um comitê de classificadores é formado por um conjunto de classificadores (especialistas), organizados paralelamente, que recebem uma informação de entrada (padrão ou instância), e tomam uma decisão individual. Com base nestas decisões, o agregador escolhe a decisão final, única, do comitê. Uma questão importante no projeto de comitês de classificadores é a definição de sua estrutura, mais especificamente, a quantidade e o tipo de classificadores, e o método de agregação, para se obter o maior desempenho possível. Geralmente, é necessário um processo exaustivo de teste e avaliação para se definir esta estrutura, e tentando auxiliar nessa linha de pesquisa, este trabalho propõe duas novas abordagens para sistemas de recomendação automática da estrutura de comitês de classificadores, usando o meta-aprendizado para recomendar três desses parâmetros: o classificador, o número de classificadores e o agregador.


  • Mostrar Abstract
  • Today we are constantly concerned with classifying things, people, and making decisions, which when we encounter problems with a high degree of complexity, we tend to seek opinions from others, usually from people who have some knowledge or even, as far as possible. possible, be experts in the field of the problem in question, so as to effectively assist us in our decision-making process. In analogy to classification structures, we have a committee of people and or specialists (classifiers) that makes decisions, and based on these answers, a final decision is made (aggregator). Thus, we can say that a committee of classifiers is formed by a set of classifiers (specialists), organized in parallel, that receive input information (pattern or instance), and make an individual decision. Based on these decisions, the aggregator chooses the final single decision of the committee. An important issue in designing classifier committees is the definition of their structure, more specifically, the number and type of classifiers, and the method of aggregation for the highest possible performance. Generally, an exhaustive testing and evaluation process is required to define this structure, and trying to assist with this line of research, this paper proposes two new approaches to automatic recommendation systems of the classifier committee structure, using meta-learning to recommend three of these parameters: the classifier, the number of classifiers, and the aggregator.

2
  • GUSTAVO SIZÍLIO NERY
  • Compreendendo o relacionamento entre Integração Contínua e seu Impacto na Qualidade do Software

  • Orientador : UIRA KULESZA
  • MEMBROS DA BANCA :
  • DANIEL ALENCAR DA COSTA
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • GUSTAVO HENRIQUE LIMA PINTO
  • RODRIGO BONIFACIO DE ALMEIDA
  • UIRA KULESZA
  • Data: 27/02/2020

  • Mostrar Resumo
  • Integração Contínua, em inglês Continuous Integration (CI), consiste na prática de automatizar e melhorar a frequência das integrações de código (por exemplo, através de builds diários). CI é frequentemente considerado um dos principais elementos que dão suporte às metodologias ágeis. CI ajuda a reduzir os riscos de integração no desenvolvimento de software, através de builds e testes automatizados, permitindo que equipes corrijam problemas de integração imediatamente. A adoção de CI pode ajudar as equipes a avaliar e melhorar a qualidade dos sistemas de software. Os potenciais benefícios de CI chamaram a atenção de pesquisadores da engenharia de software que buscam entender, de forma empírica, as possíveis vantagens de adoção da prática. Estudos anteriores evidenciam o impacto da adoção de CI em diversos aspectos do desenvolvimento de software. Apesar dos valiosos avanços, muitas suposições permanecem empiricamente inexploradas na comunidade.

    Nosso trabalho investiga, de forma empírica, os fatores da qualidade do software e suas relações com a adoção de CI. Como contribuição, esta tese fornece um mapeamento sistemático da literatura, que apresenta um amplo cenário de como profissionais e pesquisadores observam o efeito de CI nos aspectos relacionados ao produto de software. Além disso, melhoramos algumas premissas, realizando dois estudos empíricos, visando responder às seguintes questões ainda em aberto: (i) A adoção de CI está associada à evolução do código de teste dos projetos? (ii) O nível de aderência às práticas de CI está relacionada a uma melhoria da qualidade do código fonte dos projetos? Por fim, nós apresentamos um estudo pioneiro, considerando o nosso contexto de pesquisa, que vai além dos testes de correlação e investiga o efeito causal entre a adoção de CI e testes automatizados. Para isto, aplicamos uma inferência causal, através da utilização de diagramas causais e métodos probabilísticos, para determinar a efeito de CI nos testes automatizados. Nossos resultados sugerem que, apesar dos trade-offs relacionados à adoção de CI, é provável que a prática esteja associada à melhorias na qualidade do software. Além disso, CI emprega um efeito causal positivo e considerável no volume de testes dos projetos.


  • Mostrar Abstract
  • Continuous Integration (CI) is the practice of automating and improving the frequency of code integration (e.g., daily builds). CI is often considered one of the key elements involved to support agile software teams. It helps to reduce the risks in software development by automatically building and testing a project codebase, which allows the team to fix broken builds immediately. The adoption of CI can help development teams to assess the quality of software systems. The potential benefits of adopting CI have brought the attention of researchers to study its advantages empirically. Previous research has studied the impact of adopting CI on diverse aspects of software development. Despite the valuable advancements, there are still many assumptions in the community that remains empirically unexplored.

    Our work empirically investigates the software quality outcomes and their relationship with the adoption of CI. This thesis provides a 
    systematic literature mapping that presents a broad knowledge of how practitioners and researchers recognize the CI practice to affect software product-related aspects. Additionally, we improve some assumptions by performing two empirical studies that aim to answer the following open questions: (i) Does the adoption of CI share a relationship with the evolution of test code? (ii) The adherence to CI best practices is related to the degree of code quality? Finally, we present a pioneering study that goes beyond the correlation tests to investigate the estimated causal effect of CI adoption and its impact on automated tests. Thereby, we apply a causal inference using directed acyclic graphs and probabilistic methods to determine the causal effect of CI in automated tests. Our results suggest that, despite the CI adoption trade-offs, it is likely to be associated with
    improvements in software quality. Additionally, it employs a 
    considerable positive causal effect on the volume of automated tests.

3
  • LETTIERY D' LAMARE PORTELA PROCOPIO
  • Roteamento de Drones Autônomo: Um EstudoAlgorítmico

  • Orientador : MARCO CESAR GOLDBARG
  • MEMBROS DA BANCA :
  • GILBERTO FARIAS DE SOUSA FILHO
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • LUCÍDIO DOS ANJOS FORMIGA CABRAL
  • MARCO CESAR GOLDBARG
  • MATHEUS DA SILVA MENEZES
  • Data: 28/02/2020

  • Mostrar Resumo
  • Este trabalho formula a versão Assimétrica do Problema de Roteamento de Veículo Suficientemente Próximo, utilizado para planejamento de rotas de reconhecimento aéreo. O problema é formulado com programação cônica de segunda ordem e são aplicadas técnicas de otimização heurística baseada em uma propriedade geométrica do problema pararesolve-lo. Apresentamos os resultados de experimentos computacionais extensivo cominstâncias adaptadas da literatura, os testes mostram que o método proposto produz soluções de alta qualidade rapidamente ao comparado com o Solver


  • Mostrar Abstract
  • This work formulates the Assicron’s version of the Close-Enough Vehicle Routing Problem, used for aerial reconnaissance route planning. We formulate the problem with the second-order programming model and apply heuristic optimization techniques based on a geometric property of the problem to solve it. We present the results of extensive computational experiments with adapted instances of the literature, the tests show that our method produces high quality solutions quickly when compared to the solver.

4
  • EMMANUELLY MONTEIRO SILVA DE SOUSA LIMA
  • Números Complexos Graduados, ordens locais e agregações locais.

  • Orientador : REGIVAN HUGO NUNES SANTIAGO
  • MEMBROS DA BANCA :
  • ANNE MAGALY DE PAULA CANUTO
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • GRAÇALIZ PEREIRA DIMURO
  • REGIVAN HUGO NUNES SANTIAGO
  • RONEI MARCOS DE MORAES
  • Data: 17/04/2020

  • Mostrar Resumo
  • Agregações são funções que possuem a capacidade de combinar vários objetos em um único objeto dessa mesma natureza. Mínimo, máximo, média ponderada e média aritmética, são exemplos de agregações frequentemente utilizadas no cotidiano as quais possuem diversas possibilidades de aplicações. Porém, quando trabalha-se com agregações, como as mencionadas anteriormente, os objetos em questão são sempre números reais. Na literatura são quase inexistentes estudos e pesquisas que retratam essas agregações onde os objetos são números complexos. Isto deve-se ao fato de que para introduzir agregações, os objeto envolvidos necessitam estar providos de uma ordem total.

    Os Números Complexos Graduados (NCG), proposto pelo autor, foram recentemente aplicado na avaliação de desempenho de algoritmos de classificação. O método requeria a comparação entre esses números e para alcançar isso propõe-se os conceitos de ordem e agregações locais. Duas aplicações são propostas.


  • Mostrar Abstract
  •  Aggregations are functions that have the ability to combine multiple objects into a single object of the same nature. Minimum, maximum, weighted average and arithmetic mean, are examples of aggregations frequently used in everyday life which have several possibilities for applications. However, when working with aggregations, such as those mentioned above, the objects in question are always real numbers. There are almost no studies in the literature that portray these aggregations when objects are complex numbers. This is due to the fact that to introduce some aggregations, the objects involved need to be provided with a total order relation. The Graduated Complex Numbers (NCG), proposed by the author, was recently applied in the performance evaluation of classification algorithms. The method required the comparison  of complex graduated numbers to achieve that the notion of local order is proposed and consequently the concept of local aggregation is developed. Two applications of such approach are provided.

5
  • LIDIANE OLIVEIRA DOS SANTOS
  • Um Estilo Arquitetural Baseado na Norma ISO/IEC 30141 para Sistemas de Internet das Coisas

  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • ELISA YUMI NAKAGAWA
  • EVERTON RANIELLY DE SOUSA CAVALCANTE
  • FLAVIO OQUENDO
  • JAIR CAVALCANTI LEITE
  • THAIS VASCONCELOS BATISTA
  • Data: 20/05/2020

  • Mostrar Resumo
  • A Internet das Coisas (Internet of Things – IoT) vem contribuindo para uma nova revolução tecnológica, promovendo expressivo impacto social. A ideia básica de IoT é permitir conectividade, interação e integração de objetos inteligentes endereçáveis de forma única, que colaboram uns com os outros para atingir objetivos comuns. Embora IoT seja um paradigma promissor para a integração de dispositivos e tecnologias de comunicação, é necessário rever os métodos tradicionais de desenvolvimento de software, considerando as particularidades exigidas pelos sistemas de IoT. Dado o papel fundamental da arquitetura de software no desenvolvimento de sistemas intensivos de software, os desafios relacionados ao desenvolvimento de sistemas de IoT devem ser considerados desde o nível arquitetural. Arquiteturas de software permitem que os stakeholders raciocinem sobre as decisões do projeto antes da implementação, definam restrições, analisem atributos de qualidade e sejam melhor orientados em termos de manutenção e evolução do sistema. No contexto de arquitetura de software, os estilos arquiteturais têm um papel primordial uma vez que especificam os elementos arquiteturais comumente utilizados por uma determinada família de sistemas, juntamente com um conjunto de restrições sobre como estes elementos devem ser usados. Portanto, um estilo arquitetural fornece um ponto de partida para uma modelagem coerente da arquitetura de software, permitindo o reuso de elementos e de um conjunto de decisões arquiteturais previamente definidas e validadas, facilitando o processo de modelagem da arquitetura. A literatura dispõe de muita informação sobre IoT e estilos arquiteturais, porém existe uma lacuna na integração dos mesmos. As vantagens proporcionadas pelo uso de estilos arquiteturais podem beneficiar a especificação arquitetural de sistemas de IoT, porém, até o momento, não há na literatura um estilo arquitetural específico para esse tipo de sistema. No contexto de arquitetura de software para sistemas de IoT,  a norma ISO/IEC 30141 propõe um modelo de referência e uma arquitetura de referência para sistemas de IoT, e representa um consenso internacional sobre arquitetura de software para IoT. Porém, tal norma não define um estilo arquitetural. Visando preencher essa lacuna, o principal objetivo deste trabalho é propor um estilo arquitetural que ofereça diretrizes para a modelagem da arquitetura de software de sistemas de IoT, em conformidade com a norma ISO/IEC 30141. A especificação do estilo é realizada usando a linguagem SysADL, uma Linguagem de Descrição Arquitetural (ADL) voltada para a modelagem de sistemas intensivos de software. Esse trabalho também apresenta avaliações do estilo proposto, realizadas através de: (i) uma avaliação de expressividade do estilo utilizando o framework proposto por PATIG (2004), (ii) uma avaliação de usabilidade do estilo, utilizando o framework Cognitive Dimensions of Notation (CDN) (BLACKWELL; GREEN, 2003) e (iii) uma avaliação experimental por meio de dois experimentos controlados para avaliar os efeitos proporcionados pelo uso do estilo.


  • Mostrar Abstract
  • The Internet of Things (IoT) has been contributing to a new technological revolution, promoting a significant social impact. The basic idea of IoT is to enable connectivity, interaction, and integration of uniquely addressable intelligent objects that collaborate with each other to achieve common goals. Although IoT is a promising paradigm for the integration of communication devices and technologies, it is necessary to review the traditional methods of software development considering the particularities required by IoT systems. Given the fundamental role of software architecture in the development of intensive software systems, the challenges related to the development of IoT systems must be considered since the architectural level. A software architecture allows stakeholders to reason about project decisions prior to implementation, define constraints, analyze quality attributes, and be better oriented in terms of system maintenance and evolution. In the context of software architecture, architectural styles have a key role since they specify the architectural elements commonly used by a particular class of systems, along with a set of constraints on how these elements are to be used. Therefore, an architectural style provides a starting point for a coherent modeling of the software architecture, allowing the reuse of elements and a set of previously defined and validated architectural decisions, thus facilitating the architecture modeling process. The literature has much information about IoT and architectural styles, but there is a gap in their integration. The advantages offered by the use of architectural styles can benefit the architectural specification of IoT systems, but there is still no specific architectural style for this type of system in the literature. In the context of software architecture for IoT systems, the ISO/IEC 30141 standard proposes a reference model and a reference architecture for IoT systems, and represents an international consensus on software architecture for IoT. However, such a standard does not define an architectural style. Aiming to fill this gap, the main goal of this work is proposing an architectural style that offers guidelines for modeling the software architecture of IoT systems, in accordance with the ISO/IEC 30141 standard. The style is specified using the SysADL language, an Architectural Description Language (ADL) focused on the modeling of intensive software systems. This work also presents evaluations of the proposed style, performed through: (i) an evaluation of expressiveness of the style using the framework proposed by PATIG (2004), (ii) a usability evaluation of the style using the Cognitive Dimensions of Notation (CDN) framework (BLACKWELL; GREEN, 2003) and (iii) an experimental evaluation using two  controlled experiments to evaluate the effects provided by the use of style.

6
  • GUSTAVO DE ARAUJO SABRY
  • Problema do Caixeiro Viajante Alugador com Passageiros

  • Orientador : MARCO CESAR GOLDBARG
  • MEMBROS DA BANCA :
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MARCO CESAR GOLDBARG
  • MATHEUS DA SILVA MENEZES
  • PAULO HENRIQUE ASCONAVIETA DA SILVA
  • THATIANA CUNHA NAVARRO DE SOUZA
  • Data: 12/06/2020

  • Mostrar Resumo
  • Este trabalho apresenta uma nova variante do Problema do Caixeiro Alugador ainda não descrita na literatura, denominada de Problema do Caixeiro Viajante Alugador com Passageiros. Neste problema são disponibilizados um conjunto de cidades, um conjunto de veículos e um conjunto de passageiros. O tour de visitas do caixeiro pode ser realizado utilizando diferentes veículos, ou seja, o problema engloba o processo de aluguel/devolução dos carros. No modelo proposto, a variante do Caixeiro Alugador é mesclada com elementos de ridesharing. Ou seja, nas cidades podem haver passageiros interessados em viajar para um determinado destino e dispostos a dividir os custos com o caixeiro enquanto estão embarcados no veículo. O objetivo do problema é determinar, em um grafo, o menor ciclo Hamiltoniano considerando as trocas de veículos e os embarques de passageiros durante o percurso. O problema é composto por várias decisões interligadas: a sequência das cidades visitadas, a ordem dos carros utilizados, as cidades onde os automóveis devem ser alugados/devolvidos, bem como o esquema de embarque dos passageiros. Uma análise geral do problema é descrita para justicar sua complexidade. São propostas duas formulações de programação inteira mista. Estas formulações são linearizadas utilizando duas técnicas diferentes, resultando em quatro modelos lineares. Estes modelos são implementados em dois solvers e validados com base em instâncias do problema que, por sua vez,
    são baseadas nas instâncias do Caixeiro Alugador. Além disso, também são apresentadas duas heurísticas ingênuas e uma metaheurística para solucionar o problema. Experimentos computacionais comparativos e testes de desempenho são realizados sobre uma amostra de 54 instâncias. Os resultados obtidos são comparados e as conclusões são reportadas.


  • Mostrar Abstract
  • This work presents a new variant of the Traveling Car Renter Problem not yet described in the literature, denominated the Traveling Car Renter with Passengers. This problem provides a set of cities, a set of vehicles and a set of passengers. The salesman's tour can be done using dierent vehicles, i.e., the problem encompasses the process of vehicles' rental and delivery. In the proposed model, the variant of the Traveling Car Renters Problem is merged with Ridesharing aspects. That is, in cities there may be passengers interested in traveling to a certain destination and willing to share costs with the salesman while they are aboard on the vehicle. The objective of the problem is to determine, in a graph, the lowest Hamiltonian cycle considering the vehicles' exchanges and  he shipments along the tour. The problem is made up of several interlinked decisions: the sequence of visited cities, the order of used cars, the cities where the cars must be rented and/or delivered and the passengers' boarding schema. A general analysis of the problem is described to justify its complexity. Two formulations of mixed integer programming are proposed. These formulations are linearized using two dierent techniques, resulting in four linear
    models. These models are implemented in two solvers and validated based on instances of the problem, which in turn are based on instances of the Traveling Car Renter Problem. In addition, two naive heuristics and a metaheuristic to solve the problem. Comparative computational experiments and performance tests are performed on a set of 54 instances. The results obtained are compared and the conclusions are reported.

7
  • HADLEY MAGNO DA COSTA SIQUEIRA
  • Proposta de Arquitetura de Alto Desempenho para Sistemas de Tempo Real

  • Orientador : MARCIO EDUARDO KREUTZ
  • MEMBROS DA BANCA :
  • MARCIO EDUARDO KREUTZ
  • MONICA MAGALHAES PEREIRA
  • GUSTAVO GIRAO BARRETO DA SILVA
  • CESAR ALBENES ZEFERINO
  • IVAN SARAIVA SILVA
  • Data: 31/07/2020

  • Mostrar Resumo
  • Precision Timed Machines (PRET) são arquiteturas voltadas para o uso em sistemas embarcados de tempo real e sistemas cyber-físicos. A principal característica dessas arquiteturas é a capacidade de prover previsibilidade e repetibilidade para tarefas de tempo real, facilitando assim o desenvolvimento, análise e teste de sistemas de tempo real. O estado da arte, no momento dessa escrita, consiste em um conjunto de processadores baseados no conceito PRET. Esses processadores tem como uma das principais características o uso de threads em hardware com chaveamento das mesmas a cada ciclo de relógio. Essa estratégia provê um bom desempenho quando há paralelismo a nível de thread, porém induz a um baixo desempenho na falta desse paralelismo. Além disso, o chaveamento das threads a cada ciclo de relógio leva a uma latência alta. Essa latência alta pode inviabilizar a execução de tarefas que requeiram baixa latência. O presente trabalho contribui para o estado da arte de duas formas: a primeira é apresentando uma proposta de um array reconfigurável de grão grosso baseado no conceito PRET. O array proposto é acoplado a um processador PRET, provendo suporte para aceleração de trechos importantes de uma aplicação. O array foi projetado de tal forma que quando acoplado ao processador não faça este perder suas propriedades temporais originais. A segunda contribuição desta tese é a proposta e implementação de uma arquitetura multicore. Cada core é composto por um processador acoplado ao array proposto. Dessa forma, este trabalho procura apresentar uma arquitetura de alto desempenho voltado para sistemas embarcados de tempo real que tenham alta demanda de processamento tais como na aviônica, por exemplo. Resultados mostram que a arquitetura proposta é capaz de prover aceleração de mais de 10 vezes para alguns tipos de aplicação. Em termos de área, resultados de síntese para FPGA mostram que cada core ocupa menos da metade de um processador com execução fora de ordem. Além disso, possui área similar a outros arrays usados em sistemas embarcados low-power.


  • Mostrar Abstract
  • Precision-Timed Machines (PRET) are architectures intended for use in real-time and cyber-physical cyber systems. The main feature of these architectures is that they provide predictability and repeatability for real-time tasks, thus facilitating development, analysis, and testing of these systems. The state of the art, at the time of this writing, consists of processors based on the PRET concept. These processors explore thread-level parallelism by interleaving threads at a fine-grained level, i.e. at each clock cycle. This strategy provides good performance when there is parallelism at the thread level, but induces a low performance in the absence of this parallelism. In addition, the switching of threads to each clock cycle leads to high latency. This high latency can make it impossible performing tasks that require low latency. The present work contributes for the state of the art in two ways: first by presenting a proposal for a reconfigurable coarse-grain reconfigurable array based on the PRET concept. The proposed array is coupled to a PRET processor, providing support for accelerating important parts of an application. The array was designed in such a way that when coupled to the processor do not make the processor lose its original temporal properties. The second contribution of this thesis is the proposal and implementation of a multicore architecture. Each core is composed of a processor coupled to the proposedarray. Thus, this work seeks to present a high-performance architecture facing embedded real-time systems that have a high demand for performance such as avionics, for example. Results show that the proposed architecture is capable of providing acceleration of more than 10 times for some types of applications. In terms of area, synthesis results for FPGA show that each core occupies less than half of a processor running out of order. In addition, it has an area similar to other arrays used in low-power embedded systems.

8
  • JOÃO BATISTA DE SOUZA NETO
  • Mutação de Transformações para Teste de Programas Spark

  • Orientador : MARTIN ALEJANDRO MUSICANTE
  • MEMBROS DA BANCA :
  • ANAMARIA MARTINS MOREIRA
  • GENOVEVA VARGAS-SOLAR
  • GIBEON SOARES DE AQUINO JUNIOR
  • MARTIN ALEJANDRO MUSICANTE
  • PLACIDO ANTONIO DE SOUZA NETO
  • SILVIA REGINA VERGÍLIO
  • UMBERTO SOUZA DA COSTA
  • Data: 31/07/2020

  • Mostrar Resumo
  • O crescimento do volume de dados gerado, sua produção contínua e em larga escala e sua heterogeneidade levaram ao desenvolvimento do conceito de Big Data. A coleta, armazenamento e, sobretudo, processamento deste grande volume de dados exigem importantes recursos computacionais e ambientes de execução adaptados. Diferentes sistemas de pro- cessamento paralelo e distribuído são utilizados para o processamento de Big Data. Alguns sistemas adotam um modelo de fluxo de controle, como o sistema Hadoop que aplica o modelo MapReduce, e outros adotam um modelo de fluxo de dados, como o Apache Spark. A confiabilidade de programas de processamento de grandes volumes de dados se torna importante devido à grande quantidade de recursos computacionais necessários para sua execução. Por isso, é importantes testar esses programas antes que eles sejam executados em produção em uma infraestrutura custosa de computação distribuída. O teste de pro- gramas de processamento de Big Data tem ganhado interesse nos últimos anos, mas a área ainda possui poucos trabalhos que abordam o teste funcional desse tipo de programa e em sua maioria abordam apenas o teste de programas MapReduce. Esta tese de doutorado visa reduzir a lacuna existente na área ao propor uma abordagem de teste de mutação para programas que seguem um modelo de fluxo de dados. O teste de mutação é uma técnica de teste que se baseia na simulação de defeitos através de modificações no programa para criar versões defeituosas chamadas mutantes. A geração dos mutantes é realizada por operadores de mutação que são capazes de simular defeitos específicos no programa. Mutantes são utilizados no processo de projeto e avaliação de testes de modo a ter um conjunto de testes capaz de identificar os defeitos simulados pelos mutantes. Para aplicar o processo de teste de mutação em programas de processamento de Big Data, é importante ter conhecimento dos tipos de defeitos que podem ser encontrados nesse contexto para, então, projetar operadores de mutação que possam simulá-los. Com base nisso, realizamos um estudo para caracterizar defeitos e problemas que podem surgir em programas Spark. Esse estudo resultou em duas taxonomias. A primeira taxonomia agrupa e caracteriza problemas não-funcionais que afetam o desempenho de execução de programas Spark. A segunda taxonomia é focada em defeitos funcionais que afetam o comportamento de pro- gramas Spark. Com base na taxonomia de defeitos funcionais, projetamos um conjunto de operadores de mutação para programas que seguem um modelo de fluxo de dados. Esses operadores simulam defeitos no programa através de mudanças no seu fluxo de dados e nas suas operações. Os operadores de mutação foram formalizados com um modelo que propomos para representar programas de processamento de dados baseados em fluxo de dados. Para dar suporte a aplicação dos nossos operadores de mutação, desenvolvemos a ferramenta TRANSMUT-Spark que automatiza as principais etapas do processo de teste de mutação em programas Spark. Realizamos experimentos para avaliar os opera- dores de mutação e ferramenta em termos de custos e efetividade. Os resultados desses experimentos mostraram a viabilidade da aplicação do processo de teste de mutação em programas Spark e sua contribuição no processo de teste com o intuito de desenvolver programas mais confiáveis.


  • Mostrar Abstract
  • The growth in the volume of data generated, its continuous and large-scale production, and its heterogeneity led to the development of the concept of Big Data. The collection, storage and, especially, processing of this large volume of data requires important computational resources and adapted execution environments. Different parallel and distributed processing systems are used for Big Data processing. Some systems adopt a control flow model, such as the Hadoop system that applies the MapReduce model, and others adopt a data flow model, such as the Apache Spark. The reliability of large-scale data processing programs becomes important due to the large amount of computational resources required for their execution. Therefore, it is important to test these programs before running them in production in an expensive distributed computing infrastructure. The testing of Big Data processing programs has gained interest in the last years, but the area still has few works that address the functional testing of this type of program, and most of them only address the testing of MapReduce programs. This thesis aims to reduce the gap in the area by proposing a mutation testing approach for programs that follow a data flow model. Mutation testing is a testing technique that relies on simulating faults by modifying a program to create faulty versions called mutants. The generation of mutants is carried by mutation operators that are able to simulate specific faults in the program. Mutants are used in the test design and evaluation process in order to have a test set capable of identifying the faults simulated by the mutants. In order to apply the mutation testing process to Big Data processing programs, it is important to be aware of the types of faults that can be found in this context to design mutation operators that can simulate them. Based on this, we conducted a study to characterize faults and problems that can appear in Spark programs. This study resulted in two taxonomies. The first taxonomy groups and characterizes non-functional problems that affect the execution performance of Spark programs. The second taxonomy focuses on functional faults that affect the behavior of Spark programs. Based on the functional faults taxonomy, we designed a set of mutation operators for programs that follow a data flow model. These operators simulate faults in the program through changes in its data flow and operations. The mutation operators were formalized with a model we propose to represent data processing programs based on data flow. To support the application of our mutation operators, we developed the tool TRANSMUT-Spark that automates the main steps of the mutation testing process in Spark programs. We conducted experiments to evaluate the mutation operators and tool in terms of costs and effectiveness. The results of these experiments showed the feasibility of applying the mutation testing process in Spark programs and their contribution to the testing process in order to develop more reliable programs.

9
  • BRUNO DE CASTRO HONORATO SILVA
  • O Problema do Caixeiro Viajante com Cota, Múltiplos Passageiros, Transporte Incompleto e Tempo de Coleta

  • Orientador : MARCO CESAR GOLDBARG
  • MEMBROS DA BANCA :
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • LUCÍDIO DOS ANJOS FORMIGA CABRAL
  • MARCO CESAR GOLDBARG
  • MATHEUS DA SILVA MENEZES
  • PAULO HENRIQUE ASCONAVIETA DA SILVA
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • Data: 18/09/2020

  • Mostrar Resumo
  • O Problema do Caixeiro Viajante com Cota, Múltiplos Passageiros, Transporte Incompleto e Tempo de Coleta é uma nova versão do Problema do Caixeiro Viajante com Cota em que o vendedor usa um sistema de compartilhamento de viagens flexível para minimizar os custos de viagem enquanto visita alguns vértices para satisfazer uma cota pré-estabelecida. É apresentado um modelo matemático em que se consideram restrições operacionais relacionadas à capacidade do veículo, tempo de viagem, limitações de passageiros e penalidades por viagens que não atendam aos requisitos dos passageiros. Abordagens exatas e heurísticas são propostas para resolução do problema.


  • Mostrar Abstract
  •  

    The Quota Travelling Salesman Problem with Passengers, Incomplete Ride, and Collection Time is a new version of the Quota Travelling Salesman Problem. In this problem, the salesman uses a flexible ridesharing system to minimize travel costs while visiting some vertices to satisfy a pre-established quota. We consider operational constraints regarding vehicle capacity, travel time, passenger limitations, and penalties for rides that do not meet passenger requirements. We present a mathematical formulation, and exact and heuristics approaches to solve this problem.

10
  • SANDINO BARROS JARDIM
  • Auto Dimensionamento Proativo para Elasticidade Assertiva de Funções de Rede Virtuais em Cadeias de Serviço

  • Orientador : AUGUSTO JOSE VENANCIO NETO
  • MEMBROS DA BANCA :
  • AUGUSTO JOSE VENANCIO NETO
  • ANNE MAGALY DE PAULA CANUTO
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • HAROLD IVAN ANGULO BUSTOS
  • MARÍLIA PASCOAL CURADO
  • Data: 23/10/2020

  • Mostrar Resumo
  • A virtualização de funções de rede é uma tecnologia que propõe desacoplar funções de rede tradicionalmente alocadas sobre hardware especializado e disponibilizá-las como elementos de software com premissa de execução sobre servidores de propósito geral. Tal flexibilização permite a oferta de serviços de rede alocados sobre infraestruturas de nuvem e facilita o estabelecimento de políticas de rede a partir do encadeamento de diferentes funções pelo qual um determinado tráfego deva atravessar para seu cumprimento. A variação da demanda pelos serviços hospedados vai exigir da gestão de recursos o atributo de elasticidade para lidar com objetivos de desempenho, ajustando os recursos computacionais das funções para lidar com aumento de demanda, e custos de operação, evitando provisionamento além da necessidade. Tradicionalmente, a elasticidade é oferecida por abordagens reativas baseadas em limiares, mas apresentam a tendência de aumentarem exponencialmente seu tempo de resposta conforme os recursos se esgotam. Trabalhos recentes têm sugerido abordagens proativas, combinando métodos de aprendizagem de máquina que permitem antecipar as decisões e adequar o máximo possível os recursos à demanda. Tal adequação é crucial para o sucesso de uma solução de elasticidade proativa, viabilizando decisões assertivas de dimensionamento que respondam com agilidade e precisão às variações de demanda e que contribuam para o equilíbrio dos objetivos de custo e desempenho. Esta tese de doutorado apresenta o ARENA, um mecanismo de elasticidade proativa para auto dimensionamento de funções virtualizadas de rede encadeadas auxiliado por predição de demanda baseada em aprendizagem de máquina para maximização da assertividade das decisões de dimensionamento horizontal e vertical.


  • Mostrar Abstract
  • The virtualization of network functions is a technology that proposes to decouple network functions, traditionally allocated on specialized hardware, so that making them available as software elements executing at general-purpose servers premises. Such flexibility allows offering network services running over cloud infrastructures and facilitates enforcing network policies based on the chaining of different functions, through which a targeting traffic must be subjected. The variation in services demand will require the resource management attribute of elasticity to tackle performance goals, adjusting the computational resources of the functions to suit both the new projected demand  and operating costs so as to avoid provisioning beyond the need. Traditionally, reactive threshold-based approaches afford elasticity function, to the cost of exponentially increasing response times as resources run out. Recent work suggest proactive elasticity approaches harnessing the combination of machine learning methods that allow anticipating decisions and adapting resources to the projected demand, as much as possible. Such adequacy is crucial for the success of a proactive elasticity solution, in the perspective to enable assertive scaling decisions to respond with agility and precision to variations in demand, as well as to contribute with the balance of cost and performance objectives. This doctoral thesis presents ARENA, a proactive elasticity mechanism for autoscaling virtualized network functions driven by demand prediction based on machine learning to maximize the assertiveness of horizontal and vertical dimensioning decisions.

11
  • LEANDRO DE ALMEIDA MELO
  • Vai além do desafio! Compreendendo as motivações para participar e colaborar em game jams

  • Orientador : FERNANDO MARQUES FIGUEIRA FILHO
  • MEMBROS DA BANCA :
  • FERNANDO MARQUES FIGUEIRA FILHO
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • UIRA KULESZA
  • CLEIDSON RONALD BOTELHO DE SOUZA
  • KIEV SANTOS DA GAMA
  • Data: 26/10/2020

  • Mostrar Resumo
  • Contexto: Os game jams têm atraído um público cada vez mais diversificado, com milhares de profissionais, estudantes e entusiastas se reunindo para construir protótipos de jogos todos os anos. No entanto, pouco se sabe sobre o que atrai pessoas com perfis demográficos distintos a participarem voluntariamente desses eventos, ou mesmo sobre como esses participantes colaboram durante o evento. Objetivos: Neste sentido, esta tese tem como objetivo investigar por que essas pessoas participaram voluntariamente desses eventos, ou seja, quais são as suas motivações e prioridades para a participação nesses eventos. Além disto, busca-se também verificar como as motivações e os perfis demográficos dos participantes estão relacionadas à forma pela qual eles buscam e oferecem ajuda durante o evento. Método: Um estudo multimétodo, com técnicas de análise quantitativas e qualitativas, foi conduzido para entender esses aspectos. Neste processo, foram coletados dados de mais de 3500 pessoas, de mais de 100 países, as quais participaram de três edições de um game jam anual e de escala global. Resultados: Dentre os resultados, esta tese apresenta um instrumento e um modelo conceitual de motivação que emergiram da análise dos dados, sendo este último é composto por cinco dimensões motivacionais. A partir disto, foi possível de investigar a influência relativa que o perfil de atuação dos participantes exerce sobre as motivações dos participantes. Identificou-se, por exemplo, que os estudantes e hobistas são os mais influenciados por motivações técnicas, ou seja, motivações relacionadas à prática e aquisição de conhecimentos técnicos. Já os desenvolvedores indie possui uma atração maior por conexões de negócios que os demais grupos. A motivação pessoal relacionada a ideação é a grande motivação de todos os grupos, sem diferença significativa entre eles nas médias dessa motivação. Ademais, descobriu-se também que os desenvolvedores profissionais e indie são os que fornecem ajuda com mais frequência, enquanto os estudantes formam o grupo com mais intensidade de interação com os mentores. No entanto, a frequência com que os participantes recebem ajuda dos mentores diminui com o aumento da experiência no desenvolvimento de jogos e participação prévia em game jams. Conclusão: Com base nesses resultados é disponibilizado um conjunto de implicações organizacionais para auxiliar organizadores a tornarem os eventos mais atrativos e identificar práticas que podem tornar a colaboração ainda mais presente e efetiva nestes eventos. Por fim, também são discutidas implicações ao design que podem derivar-se dos resultados desta tese


  • Mostrar Abstract
  • Game jams have been attracting an increasingly diverse attendance, with thousands of professionals, students and enthusiasts coming together to build prototypes of games every year. However, little is known about what attracts people with such different demographic profiles to voluntarily participate in such events. The same can be said about the way participants collaborate during the event. Objectives: In this sense, this dissertation aims to investigate the reason why people willingly take part in such events, i.e., what acts as their motivations and priorities for participating in game jams. In addition, this work is also intended to verify how the motivations and demographic profiles of the participants are related to the way in which they seek and offer help throughout the event. Method: A multi-method study, using quantitative and qualitative analysis techniques, was conducted to understand the mentioned aspects. In this process, data was collected from more than 3,500 people, across more than 100 countries, who had participated in three editions of an annual and global-scale game jam. Results: Among the results, this dissertation presents an instrument and a conceptual model of motivation which resulted from the data analysis, the latter being composed of five motivational dimensions. Based on these aspects, it was possible to investigate the relative influence that the participants' occupation profile has on the participants' motivations. It was possible to identify, for instance, that students and hobbyists are the most influenced by technical motivations, i.e., motivations related to the practice and acquisition of technical knowledge. Indie developers are more attracted to business connections than other groups. Personal motivation related to ideation is the great motivation of all groups, with no significant difference between them in the averages of this specific motivation. Furthermore, it was found that professional and indie developers are the ones who provide help most often, while students constitute the group with the highest degree of intensity in interacting with mentors. However, the frequency with which participants receive help from mentors decreases with increasing experience in game development and the number of prior participations in game jams. Conclusion: Based on such results, a set of organizational implications is available to assist organizers in holding more attractive events and identifying practices that can make collaboration even more present and effective in such events. Finally, implications for design that can be derived from the results of this dissertation are also discussed.

12
  • CÍCERO ALVES DA SILVA
  • Uma Arquitetura de Software Baseada em Computação em Névoa para Gestão dos Registros Médicos Centrada no Paciente

  • Orientador : GIBEON SOARES DE AQUINO JUNIOR
  • MEMBROS DA BANCA :
  • GIBEON SOARES DE AQUINO JUNIOR
  • AUGUSTO JOSE VENANCIO NETO
  • THAIS VASCONCELOS BATISTA
  • ANDRÉ GUSTAVO DUARTE DE ALMEIDA
  • FERNANDO ANTONIO MOTA TRINTA
  • Data: 10/11/2020

  • Mostrar Resumo
  • O envelhecimento da população mundial e o crescimento do número de pessoas com do-
    enças crônicas têm aumentado os gastos com atendimento médico. Desse modo, o uso

    de soluções tecnológicas, inclusive as baseadas em Internet das Coisas, vêm sendo am-
    plamente adotadas na área médica no intuito de melhorar a saúde dos pacientes. Neste

    contexto, abordagens baseadas em Computação em Nuvem têm sido adotadas para re-
    alizar o armazenamento e processamento das informações geradas nessas soluções. No

    entanto, o uso de Nuvem pode gerar atrasos intoleráveis para aplicações médicas. Assim,
    o paradigma de Computação em Névoa surgiu como uma alternativa para contornar esse

    problema, provendo computação e armazenamento mais próximo das fontes de dados. En-
    tretanto, a gestão dos dados médicos armazenados na Névoa ainda é um desao. Além do

    mais, características de privacidade, condencialidade e interoperabilidade precisam ser

    consideradas em abordagens que tenham o objetivo de explorar esta problemática. As-
    sim, este trabalho dene uma arquitetura de software, baseada em Computação em Névoa,

    projetada para prover o gerenciamento dos registros médicos centrado no paciente. Esta
    arquitetura utiliza a tecnologia Blockchain para prover as características de privacidade
    necessárias. Nesta tese também descreve-se um estudo de caso que analisou os requisitos
    de privacidade, condencialidade e interoperabilidade em um cenário de Home Care. Por
    m, o comportamento do desempenho relacionado ao acesso aos dados gerenciadas na
    arquitetura proposta foi analisado no cenário mencionado.


  • Mostrar Abstract
  • The aging of the world's population and the growth in the number of people with ch-
    ronic diseases have increased expenses with medical care. Thus, the use of technological

    solutions, including Internet of Things-based solutions, has been widely adopted in the
    medical eld to improve the patients' health. In this context, approaches based on Cloud

    Computing have been used to store and process the information generated in these soluti-
    ons. However, using Cloud can create delays that are intolerable for medical applications.

    Thus, the Fog Computing paradigm emerged as an alternative to overcome this problem,
    bringing computation and storage closer to the data sources. However, managing medical
    data stored in Fog is still a challenge. Moreover, characteristics of privacy, condentiality,
    and interoperability need to be considered in approaches that aim to explore this problem.
    So, this work denes a Fog Computing-based software architecture designed to provide

    patient-centered management of medical records. This architecture uses Blockchain tech-
    nology to provide the necessary privacy features. This thesis also describes a case study

    that analyzed the requirements of privacy, condentiality, and interoperability in a Home
    Care scenario. Finally, the performance behavior related to access to data managed in the
    proposed architecture was analyzed in the mentioned scenario.

13
  • BARTIRA PARAGUACU FALCAO DANTAS ROCHA
  • Um Modelo Semântico de Dados para Cidades Inteligentes

  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • THAIS VASCONCELOS BATISTA
  • EVERTON RANIELLY DE SOUSA CAVALCANTE
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • FREDERICO ARAUJO DA SILVA LOPES
  • BERNADETTE FARIAS LÓSCIO
  • ROSSANA MARIA DE CASTRO ANDRADE
  • Data: 27/11/2020

  • Mostrar Resumo
  • Cidades inteligentes envolvem uma miríade de sistemas interconectados, destinados a promover uma melhor gestão dos recursos urbanos e naturais das cidades, contribuindo assim para a melhoria da qualidade de vida dos cidadãos. A heterogeneidade de domínios, sistemas, dados e relacionamentos entre eles requer a definição de um modelo de dados capaz de expressar informações de maneira flexível e extensível, além de promover a interoperabilidade entre sistemas e aplicativos. Além disso, os sistemas de cidades inteligentes podem se beneficiar de informações georreferenciadas para permitir ações mais efetivas no espaço urbano do mundo real. Com o objetivo de enfrentar os desafios relacionados à heterogeneidade dos dados, considerando a informação georreferenciada sobre o território, este trabalho apresenta o LGeoSIM, um modelo de informação semântico para cidades inteligentes como meio de promover a interoperabilidade e possibilitar raciocínio automatizado sobre informações. O LGeoSIM é fundamentado em tecnologias da Web Semântica, em especial ontologias, RDF e Linked Data, que possibilitam a definição de informações semânticas vinculadas, com como consultas sobre tais informações. Sua especificação foi implementada, com suporte da especificação do  NGSI-LD, na Plataforma Smart Geo Layers (Sgeol), uma plataforma de middleware concebida sobre o FIWARE que visa facilitar a integração dados fornecidos por fontes heterogêneas em um ambiente de cidade inteligente, bem como dar suporte ao desenvolvimento de aplicações. 


  • Mostrar Abstract
  • Smart cities involve a myriad of interconnected systems designed to promote better management of urban and natural resources in cities, thus contributing to improving citizens' quality of life. The heterogeneity of domains, systems, data, and relationships between them requires defining a data model that can express information in a  flexible and extensible way, and promote interoperability between systems and applications. In addition, smart city systems can benefit from georeferenced information to enable more effective actions in a real-world urban space. In order to address the challenges related to data heterogeneity, considering georeferenced territory information, this paper presents LGeoSIM, a semantic information model for smart cities as a means of promoting interoperability and enabling automated information thinking. LGeoSIM is based on Semantic Web technologies, especially ontologies, RDF and Linked Data, which enable the definition of linked semantic information, and queries about such information. Its specification was implemented, supported by the NGSI-LD specification, on the Smart Geo Layers Platform (Sgeol), a FIWARE-designed middleware platform that aims to facilitate the integration of data provided by heterogeneous sources into a smart city environment, as well as how to support application development.

14
  • VALDIGLEIS DA SILVA COSTA
  • Autômatos Fuzzy Hesitantes Típicos: Teoria e Aplicações

  • Orientador : BENJAMIN RENE CALLEJAS BEDREGAL
  • MEMBROS DA BANCA :
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • REGIVAN HUGO NUNES SANTIAGO
  • ANDERSON PAIVA CRUZ
  • HELIDA SALLES SANTOS
  • RENATA HAX SANDER REISER
  • Data: 08/12/2020

  • Mostrar Resumo
  • Os autômatos fuzzy são uma generalização dos autômatos finitos, que são capaz de modelar computações considerando níveis de incerteza. Em anos recentes, devido ao amadurecimento das extensões dos conjuntos fuzzy, começa a emergir na literatura diferentes generalizações de autômatos fuzzy, como autômatos fuzzy intervalares, autômatos fuzzy intuicionistas, e etc. Os autômatos fuzzy além de serem a parte fundamental da teoria da computação fuzzy, também apresentam um relativo sucesso em aplicações práticas, principalmente na área de reconhecimento de padrões, viabilizando a modelagem de incertezas. Neste
    trabalho é apresentada uma nova generalização dos autômatos fuzzy baseada nas definições de conjuntos fuzzy hesitantes típicos (que são nomeados de autômatos fuzzy hesitantes típicos). A ideia central por trás dessa generalização consiste em trazer para o domínio da computação a possibilidade de trabalhar simultaneamente com incertezas e com hesitação. Assim esta nova generalização tem por objetivo possibilitar novas formas de se enfrentar problemas que antes não eram facilmente modelados, usando apenas incertezas. Além disso, neste trabalho são mostradas formas de se aplicar esses novos autômatos nas áreas
    de processamento digital de imagens e classificação de dados.


  • Mostrar Abstract
  • As a method of trying to extrapolate the Church’s thesis, using the ideas of the fuzzy sets presented by Zadeh, the fuzzy automaton theory emerges in the late 1960s, as an extension of the finite automata theory, adding the possibility of computing with some level of uncertainty. Over the years, due to the maturation of the extensions of the fuzzy sets, different generalizations of fuzzy automata started to emerge in the literature, such as interval-valued fuzzy automata, intuitionist fuzzy automata, etc. Fuzzy automata, in addition to being the fundamental part of the fuzzy computation theory, also present a relative success in practical applications, mainly in the field of pattern recognition, through uncertainty modeling. This work presents a new generalization of fuzzy automata based on the definitions of typical hesitant fuzzy sets (which we will call typical hesitant fuzzy automata), as well as the motivation for this generalization and for bringing to the domain nof computing the possibility of working with uncertainties and also being able to work with hesitation. Therefore, this new generalization aims to enable new ways to face problems that were not easily modeled before, using only uncertainties. Besides, we will show ways to apply this new type of automata in the fields of digital image processing and data classification.

2019
Dissertações
1
  • LEANDRO DIAS BESERRA
  • CrashAwareDev:Apoiando o Desenvolvimento a partir da Mineração e Análise de Crash Reports

     
  • Orientador : ROBERTA DE SOUZA COELHO
  • MEMBROS DA BANCA :
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • ROBERTA DE SOUZA COELHO
  • RODRIGO BONIFACIO DE ALMEIDA
  • UIRA KULESZA
  • Data: 31/01/2019

  • Mostrar Resumo
  • Ao longo dos anos, organizações têm dedicado boa parte do tempo de desenvolvimento de software na correção de bugs. Esta é uma das razões que têm motivado a utilização de ferramentas de crash reports com objetivo de armazenar informações de falhas que ocorreram no sistema para facilitar a localização e  correção dos defeitos que ocasionaram as falhas. Contudo, podemos pensar em uma outra utilidade para tais ferramentas. As informações armazenadas ao longo do tempo poderiam ser utilizadas para prevenir que desenvolvedores cometam falhas semelhantes àquelas ocorridas no passado. Neste estudo iremos propor uma forma de transformar estas informações em conhecimentos e que sejam levados ao desenvolvedor durante a codificação do sistema. Faremos uma análise de um relatório de falhas de um sistema web real, onde serão coletados padrões de bugs (bug patterns) específicos do sistema. A partir dos dados obtidos na análise, uma ferramenta, integrada ao ambiente de desenvolvimento Eclipse, foi proposta para alertar desenvolvedores sobre trechos de código com potencial para gerar falhas. Além disso, o aplicativo será capaz de minerar stack traces de falhas ocorridas, identificar funções do sistema com grande reincidência de falhas e fornecer esta informação na IDE Eclipse, com intenção de destacar funções críticas do sistema. 


  • Mostrar Abstract
  • Currently,  several organizations have devoted much of the software development time for bug fixing. This is one of the reasons why crash reports are becoming more and more popular - since it is a way to centralize information received due to failures. However, we can think of another utility for such tools. The information stored over time could be used to prevent developers from making similar mistakes (bugs) to those they performed in the past. In this study we propose a way to transform this information into a set of tips to be presented to the developer while s/he is coding. We propose such tips to be included on Eclipse development environment, in the form of an Eclipse plug-in which alerts developers about code fragments with potential to cause failures. In addition, the application will be able to mine stack traces of failures occurring, identifying system methods with large recurrence of failures and provide this information in the Eclipse IDE. We plan to conduct a case study in a real development context to evaluate the proposed tool.

2
  • VALMIRO RIBEIRO DA SILVA
  • An investigation of biometric-based user predictability in the online game League of Legends

  • Orientador : MARJORY CRISTIANY DA COSTA ABREU
  • MEMBROS DA BANCA :
  • ANNE MAGALY DE PAULA CANUTO
  • MARJORY CRISTIANY DA COSTA ABREU
  • PLACIDO ANTONIO DE SOUZA NETO
  • Data: 07/02/2019

  • Mostrar Resumo
  • Computer games has been consolidated as a favourite activity in the last years. Although such games were created to promote
    competition and promote self-improvement, there are some recurrent issues. One that has received the least amount of attention so far is the problem of "account sharing" which is when a player shares his/her account with more experienced players in order to progress in the game. The companies running those games tend to punish this behaviour, but this specific case is hard to identify. Since, the popularity of machine learning has never been higher, the aim of this study is to better understand how biometric data from online games behaves, to understand how the choice of character impacts a player and how different algorithms perform when we vary how frequently a sample is collected. The experiments showed through the use of statistic tests how consistent a player can be even when he/she changes characters or roles, what are the impacts of more training samples, how the tested
    machine learning algorithms are affected by how often we collect our samples, and how dimensionality reduction techniques, such as Principal Component Analysis affect our data, all providing more information about how this state of art game database works.


  • Mostrar Abstract
  • Computer games has been consolidated as a favourite activity in the last years. Although such games were created to promote
    competition and promote self-improvement, there are some recurrent issues. One that has received the least amount of attention so far is the problem of "account sharing" which is when a player shares his/her account with more experienced players in order to progress in the game. The companies running those games tend to punish this behaviour, but this specific case is hard to identify. Since, the popularity of machine learning has never been higher, the aim of this study is to better understand how biometric data from online games behaves, to understand how the choice of character impacts a player and how different algorithms perform when we vary how frequently a sample is collected. The experiments showed through the use of statistic tests how consistent a player can be even when he/she changes characters or roles, what are the impacts of more training samples, how the tested
    machine learning algorithms are affected by how often we collect our samples, and how dimensionality reduction techniques, such as Principal Component Analysis affect our data, all providing more information about how this state of art game database works.

3
  • LUANA TALITA MATEUS DE SOUZA
  • Documentação de requisitos e compartilhamento do conhecimento: Uma proposta a partir de um estudo etnográfico

  • Orientador : MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • MEMBROS DA BANCA :
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • LYRENE FERNANDES DA SILVA
  • APUENA VIEIRA GOMES
  • RICARDO ARGENTON RAMOS
  • Data: 26/04/2019

  • Mostrar Resumo
  • Este trabalho apresenta um estudo etnográfico realizado sobre a rotina de duas equipes de analistas de requisitos em uma fábrica de software. O objetivo é identificar os desafios na produção e manutenção da documentação para seus diversos públicos-alvo e propor práticas que melhorem a efetividade do compartilhamento e utilização das informações levantadas e documentadas. Foi desenvolvido uma adaptação de um processo etnográfico composta das etapas de: observação das equipes, entrevistas (com analistas de requisitos, líderes de equipes e direção de sistemas) e análise de material. Ao final deste processo, os resultados coletados são interpretados numa etapa chamada de triangulação - que estrutura e combina os eventos observados. Os desafios identificados foram agrupados em três grandes categorias: compartilhamento de conhecimento, documentação e metodologias ágeis. Após o levantamento desses desafios, dois surveys foram aplicados nos públicos-alvo da documentação para entender suas necessidades informacionais.  O conhecimento dos desafios e as práticas indicadas permitirão obter: ganhos de produtividade, redução do custo de comunicação entre membros das equipes, redução do custo de planejamento das sprints, redução da dependência presencial do analista de requisitos e uma documentação efetiva. Como contribuição deste trabalho são o próprio processo etnográfico - constituído especificamente para esta pesquisa - e os benefícios no uso das práticas sugeridas.


  • Mostrar Abstract
  • This paper presents an ethnographic study on the routine of two teams of requirements analysts in a software factory. The objective is to identify the challenges in producing and maintaining documentation for its various target audiences and to propose practices that improve the effectiveness of the sharing and use of the information collected and documented. It was developed an adaptation of an ethnographic process composed of the phases of: observation of the teams, interviews (with requirements analysts, team leaders and systems management) and material analysis. At the end of this process, the results collected are interpreted in a stage called triangulation - which structures and combines the observed events. The challenges identified were grouped into three broad categories: knowledge sharing, documentation and agile methodologies. After surveying these challenges, two surveys were applied to documentation audiences to understand their informational needs. Knowledge of the challenges and practices indicated will allow for: productivity gains, reduced communication costs among team members, reduced cost of sprint planning, reduction of in-person dependency of requirements analyst, and effective documentation. As contribution of this work are the own ethnographic process - constituted specifically for this research - and the benefits in the use of the suggested practices.

4
  • FÁBIO FREIRE DA SILVA JÚNIOR
  • Um por todos e todos por um: um estudo exploratório sobre os aspectos que facilitam a colaboração em game jams

  • Orientador : FERNANDO MARQUES FIGUEIRA FILHO
  • MEMBROS DA BANCA :
  • FERNANDO MARQUES FIGUEIRA FILHO
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • UIRA KULESZA
  • NAZARENO ANDRADE
  • Data: 29/04/2019

  • Mostrar Resumo
  • Game jams são eventos onde pessoas formam equipes com o intuito de desenvolver protótipos funcionais de jogos de forma colaborativa e sob restrição temática e de tempo. Embora tais eventos tenham crescido em popularidade, ainda existem poucas evidências na literatura sobre como ocorre a colaboração nesse tipo de evento, e principalmente, quais são os fatores que facilitam essa colaboração. Sendo assim, este estudo visa entender quais são os aspectos facilitadores da colaboração no processo de desenvolvimento de jogos em jams. Foram realizados dois estudos durante a Global Game Jam 2018 e 2019. Os resultados do estudo descrevem as principais estratégias durante o evento a fim de facilitar a colaboração para produção dos protótipos, principalmente naquelas que permitem pessoas inexperientes desenvolver algo em 48 horas. Além disso, mentores e jammers experientes foram encontrados como os principais coordenadores nesse processo, atuando como mediadores na colaboração dentro e fora das equipes. Este trabalho ainda contribui por compreender e caracterizar o funcionamento do trabalho colaborativo em jams, e a partir de evidências coletadas e validadas com especialistas, sugere um catálogo de práticas que suportam a mediação da colaboração e interação entre equipes nesse tipo de evento. Tais técnicas poderão ser usadas em contextos similares, a fim de, facilitar a colaboração entre equipes.


  • Mostrar Abstract
  • Game jams are events where people form teams with the purpose of developing functional game prototypes in a collaborative way and under thematic and time constraints. Although such events have grown in popularity, there is still little evidence in the scientific literature on how collaboration occurs in this type of event, and especially, what are the factors that facilitate such collaboration. This study aims to understand how facilitating aspects support collaboration in game development through jams. To this aim, a study was conducted during the Global Game Jam 2018 and 2019. Our findings describe the main practices during the event and what strategies are used by teams in order to facilitate the collaboration. In addition, mentors and experienced jammers are recognized as the main coordinators of these tasks, acting as mediators between those teams. This work also contributes to understanding and characterizing the collaborative work in jams. With collected and validated evidence from experts, we suggest a catalog of practices that support the interaction between teams in this type of event. These techniques may be applied in similar contexts to facilitate collaboration between teams.

5
  • YGOR ALCÂNTARA DE MEDEIROS
  • Caixeiro Viajante com Coleta de Prêmios e Passageiros

  • Orientador : MARCO CESAR GOLDBARG
  • MEMBROS DA BANCA :
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MARCO CESAR GOLDBARG
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • THATIANA CUNHA NAVARRO DE SOUZA
  • Data: 01/07/2019

  • Mostrar Resumo
  • O Problema do Caixeiro Viajante com Coleta de Prêmios e Passageiros é um modelo que mescla elementos do clássico PCVCP, com características dos problemas de ridesharing. Os custos do trajeto do motorista são reduzidos através do rateio de despesas em virtude do compartilhamento de assentos no veículo usado na tarefa de coleta de prêmios. As tarefas na rota são selecionadas segundo o modelo de roteamento com coleta de prêmios, portanto considerando-se penalidades pelo eventual não atendimento de tarefas existentes e, adicionalmente, determinando o cumprimento de uma demanda mínima de tarefas. A demanda do transporte colaborativo é protegida por restrições que garantem aos passageiros seu transporte até o destino. Igualmente, os custos de rateio serão menores ou iguais aos limites de tarifa estabelecidos pelos passageiros. O presente trabalho apresenta a formulação matemática para o problema, valida o modelo em um processo de solução exata e examina o desempenho de dois algoritmos que executam passos de construção com critérios exatos e seis com critérios heurísticos. Os algoritmos construtivos com passos exatos visam principalmente criar resultados de ancoragem para a avalição do desempenho dos algoritmos com decisões heurísticas. São também propostos três grupos de instâncias de teste para o problema visando permitir futuras experimentações de novos algoritmos. Por fim, conclui-se que os algoritmos de passos heurísticos alcançam desempenho promissor para o problema examinado.


  • Mostrar Abstract
  • The Prize Collect Traveling Salesman Problem with Ridesharing is a model that merge elements of the classic problem PCTSP with ridesharing. The costs of the driver journey are reduced through the apportionment of expenses due to the sharing of accents in the vehicle used in the task of collecting prizes. The tasks in the route are selected according to the routing model with collection of prizes, therefore considering penalties for the non-attendance of existing task and additionally determining the fulfillment of a minimum demand of tasks. The demand for collaborative transport is protected by restrictions that ensure passengers are transported to their destination. Likewise, the apportionment costs will be less than or equal to the tariff limits established by the passengers. The present work presents the mathematical formulation for the problem, validates the model in an exact solution process and examines the performance of two algorithms that execute construction steps with exact criteria and six with heuristic criteria. Accurate step-by-step algorithms aim to create anchoring results to evaluate algorithm performance with heuristic decisions. Three instance groups are also proposed for the problem in order to allow future experimentation of new algorithms. Finally, it is concluded that the algorithms of heuristic steps achieve promising performance for the problem examined.

6
  • HIAGO MAYK GOMES DE ARAÚJO ROCHA
  • Problema de Mapeamento e Roteamento: Propostas de Otimização Bioinspiradas Híbridas 

  • Orientador : MONICA MAGALHAES PEREIRA
  • MEMBROS DA BANCA :
  • ANTONIO CARLOS SCHNEIDER BECK FILHO
  • MARCIO EDUARDO KREUTZ
  • MONICA MAGALHAES PEREIRA
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • Data: 19/07/2019

  • Mostrar Resumo
  • O avanço na tecnologia de fabricação de circuitos integrados, possibilitado pela diminuição no tamanho dos transistores, permitiu a criação de sistemas complexos multiprocessados dentro de um único chip, chamados de Sistemas em Chip Multiprocessados (MPSoC - Multiprocessor System on Chip).  Para permitir a comunicação entre os diversos núcleos do MPSoC, um dos principais modelos de comunicação utilizado na atualidade é a Rede em Chip (NoC - Network on Chip) que apresenta maior escalabilidade do que a solução tradicional de barramentos. Apesar do potencial ganho de desempenho do MPSoCs através do paralelismo de tarefas, para se obter um real ganho de desempenho é necessário um eficiente gerenciamento dos recursos disponíveis no sistema, como núcleos de processamento e canais de comunicação. Esse gerenciamento está relacionado, dentre outros aspectos, à forma como as tarefas das aplicações são mapeadas nos núcleos do MPSoC e quais canais da NoC são usados nas rotas de comunicação entre as tarefas. Na literatura, esses aspectos são geralmente tratados individualmente, porém eles possuem forte relação. Partindo deste princípio, neste trabalho é apresentada uma formulação matemática do problema denominado de Problema de Mapeamento e Roteamento (PMR) o qual é uma proposta de junção entre eles. Além disso, visando encontrar soluções de mapeamento otimizadas, este trabalho apresenta três propostas de estratégia de mapeamento estático e uma dinâmica. No contexto de mapeamento estático, são apresentadas estratégias bioinspiradas híbridas de otimização (Genético, Memético e Transgenético). Essas estratégias apresentam abordagens gerais para encontrar soluções de mapeamento e dentro dessas abordagens é usada uma avaliação de fitness exato de roteamento baseado no modelo proposto para o PMR. No contexto de mapeamento dinâmico, é proposto um algoritmo que usa os operadores apresentados no Transgenético para prover alocação de tarefas por demanda em tempo de execução. Os algoritmos foram implementados e seus resultados foram simulados em uma ferramenta de NoC. Além disso, também foram implementados três algoritmos da literatura para fins de comparação com as propostas apresentadas. Os resultados demonstram que as propostas que conseguem capturar mais profundamente as características da arquitetura são mais eficientes.  Em específico, o Transgenético apresenta melhores resultados de latência e de energia. Além disso, foi possível utilizar aspectos do transgenético para propor uma solução dinâmica que possa ser utilizada quando a aplicação não for conhecida antes de sua execução.


  • Mostrar Abstract
  • The advances of integrated circuit fabrication technology, allowed by the reduction of transistors size, make possible the creation of multiprocessed complex systems inside a single chip, named Multiprocessors System of Chip (MPSoC). To allow communication among the different cores, one of the main communication model used currently is the Network on Chip (NoC) which shows more scalability than traditional bus solution.  In spite of the expected potential performance improvement due to task parallelism, to achieve a real performance improvement it is necessary an efficient available resource management in the system, such as processing cores and communication links. This management is related, among other aspects, to how tasks are mapped in the MPSoC cores and which NoC channels are used to provide communication routes for tasks. In the literature, these aspects are handled individually, even though, they are highly correlated. Based on this principle, in this work, it is presented a mathematical formulation of the Mapping and Routing Problem (PMR) that combines both problems. Additionally, in order to find optimized mapping solutions, this work presents three proposals of static mapping and one of the dynamic mapping.In the static mapping context, it is presented bioinspired hybrid optimization strategies (Genetic, Memetic and Transgenetic). These strategies present a general approach to find mapping solution and internally, it is used an exact routing fitness function evaluation based on the proposed model.In the dynamic mapping context, it is proposed an algorithm that uses the Transgenetic operator to provide the task allocation by demand at run time. The algorithms were implemented and its results were simulated using a NoC simulation tool. In order to compare to state of art, three algorithms from literature were also implemented and simulated. The results show that approaches able to capture more deeply the features of the architecture are more efficient. More specifically, the Transgenetic algorithm presents the best results for latency and energy. Furthermore, it was possible to use the Transgenetic aspects to propose a dynamic solution that can be used when the system does not know the application behavior.

7
  • SIDEMAR FIDELES CEZARIO
  • Aplicação do Operador OWA nos Problemas da Otimização de Ângulo de Feixe e da Intensidade em
    IMRT

  • Orientador : ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MEMBROS DA BANCA :
  • THALITA MONTEIRO OBAL
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MARCO CESAR GOLDBARG
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • Data: 23/07/2019

  • Mostrar Resumo
  • A radioterapia é um método extremamente importante no tratamento do câncer. O
    principal desafio é entregar pelo menos a dose prescrita para o tumor, enquanto evita expor
    os órgãos saudáveis à radiação além do permitido. Um dos principais modos de tratamento
    nesta área é a teleterapia de intensidade modulada (IMRT). Ao longo dos anos, muitos
    pesquisadores apresentaram algoritmos para resolver a principal difculdade da IMRT
    que consiste em automatizar a seleção de ângulos de feixes para uma melhor distribuição de
    dose. Nesta pesquisa é apresentado um algoritmo que busca o balanceamento ideal, entre
    um conjunto de ângulos e uma distribuição de dose que respeite as prescrições médicas
    inerentes ao tratamento. O algoritmo proposto utiliza dois novos modelos matemáticos e o
    operador
    Ordered Weighted Average (OWA) como critério de preferência na escolha da melhor
    solução.


  • Mostrar Abstract
  • Radiation therapy is an extremely important method for cancer treatment. The main challenge is to deliver, at least, the prescribed dose to the tumor, while avoiding to expose healthy organs to radiation beyond defined limits. The intensity modulated teletherapy (IMRT) is an advanced mode of high-precision radiotherapy. Over the years, many researchers have presented algorithms to solve the main difficulty of IMRT treatments, which consists in automating the selection of beam angles for an adequate dose distribution. This research presents an algorithm that seeks the ideal balance between a set of angles and a dose distribution that respects medical prescriptions inherent to the treatment. The proposed algorithm uses two new mathematical models and the Ordered Weighted Average (OWA) operator as a criterion of preference to choose the best solution.

8
  • THIAGO SOARES MARQUES
  • Otimização Multiobjetivo dos Problemas de Ângulos de Feixe e Mapa de Fluência para Tratamentos Radioterápicos IMRT

  • Orientador : ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MEMBROS DA BANCA :
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MARCO CESAR GOLDBARG
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • THALITA MONTEIRO OBAL
  • Data: 23/07/2019

  • Mostrar Resumo
  • A configuração do conjunto de ângulos de feixes (BAO) e a distribuição da dose de radiação (FMO) ao longo de um tratamento de radioterapia para pacientes com câncer são dois problemas de otimização que devem ser resolvidos na etapa de planejamento do tratamento. Um dos modos de radioterapia é conhecido por IMRT (Intensity Modulated Radiation Therapy). Este modo consiste no uso de aceleradores lineares controlados por computador para entregar doses precisas de radiação ao tumor e, ao mesmo tempo, prevenir, tanto quanto possível, que tecidos saudáveis que estão ao redor do tumor recebam radiação. Este trabalho apresenta modelos de programação linear e quadráticos para o problema FMO e algoritmos mono e multiobjetivo para o problema BAO. Este estudo também relata os resultados de experimentos computacionais realizados em um conjunto de casos reais.


  • Mostrar Abstract
  • The Beam Angle Optimization (BAO) and the Fluency Map Optimization (FMO) are two problems that arise from the planning of radiation therapy for cancer treatments. One of the main modes of radiation therapy is the IMRT (Intensity Modulated Radiation Therapy) which consists in using computer-controlled linear accelerators to deliver precise radiation doses to the tumor. The IMRT aims at finding a balance between exposing the region of the tumor and, at the same time, preventing, as much as possible, healthy tissues that surround the tumor to receive radiation. This study presents linear and quadratic programming models  for the FMO and  single and multiobjective algorithms that use those models for the BAO problem.  This study also reports the results of computational experiments on a set of real instances.

9
  • YSTALLONNE CARLOS DA SILVA ALVES
  • Aplicação de Computação Quântica em Superresolução de Imagens de Vigilância

  • Orientador : BRUNO MOTTA DE CARVALHO
  • MEMBROS DA BANCA :
  • ARAKEN DE MEDEIROS SANTOS
  • BRUNO MOTTA DE CARVALHO
  • MARJORY CRISTIANY DA COSTA ABREU
  • Data: 31/07/2019

  • Mostrar Resumo
  • Super-Resolução (SR) é uma técnica exaustivamente explorada e incorpora possibilidades
    estratégicas ao processamento de imagens. À medida que os computadores quânticos
    gradualmente evoluem e fornecem provas incondicionais de uma vantagem computacional
    na solução de problemas intratáveis com relação aos homólogos clássicos, a computação
    quântica emerge com o argumento convincente de oferecer aceleração exponencial para
    processar operações computacionalmente dispendiosas. Vislumbrando o design de algo-
    ritmos paralelos, quantum-ready, para dispositivos ruidosos de curto prazo e iniciando
    com a Super-Resolução Rápida e Acurada de Imagem (Rapid and Accurate Image Super
    Resolution – RAISR), uma implementação aplicando computação quântica variacional
    é demonstrada para aprimorar imagens de vigilância degradadas. Este estudo propõe
    uma abordagem que combina os benefícios de RAISR, um método não alucinante e
    computacionalmente eficiente, e o Eigensolver Variacional Quântico (Variational Quantum
    Eigensolver – VQE), um algoritmo híbrido clássico-quântico, para conduzir SR com o
    suporte de um computador quântico, preservando o desempenho quantitativo em termos
    de Avaliação da Qualidade de Imagem (Image Quality Assessment – IQA). Ele abrange a
    geração de filtros adicionais baseados em hash, aprendidos com a implementação clássica
    da técnica de SR, para explorar mais melhorias de desempenho, produzir imagens que
    são significativamente mais nítidas e induzir o aprendizado de filtros de upscaling mais
    poderosos com efeitos de aprimoramento integrados. Como resultado, amplia o potencial
    de aplicação de RAISR para melhorar os ativos de baixa qualidade gerados por câmeras
    de baixo custo, bem como promove a eventual implementação de métodos robustos de
    aprimoramento de imagens impulsionados através do uso de computação quântica.


  • Mostrar Abstract
  • Super-Resolution (SR) is a technique that has been exhaustively exploited and incorporates
    strategic possibilities to image processing. As quantum computers gradually evolve
    and provide unconditional proof of a computational advantage at solving intractable
    problems over their classical counterparts, quantum computing emerges with the compelling
    argument of offering exponential speed-up to process computationally expensive operations.
    Envisioning the design of parallel, quantum-ready algorithms for near-term noisy devices
    and igniting Rapid and Accurate Image Super Resolution (RAISR), an implementation
    applying variational quantum computation is demonstrated for enhancing degraded
    surveillance imagery. This study proposes an approach that combines the benefits of
    RAISR, a non hallucinating and computationally efficient method, and Variational
    Quantum Eigensolver (VQE), a hybrid classical-quantum algorithm, to conduct SR with
    the support of a quantum computer, while preserving quantitative performance in terms
    of Image Quality Assessment (IQA). It covers the generation of additional hash-based
    filters learned with the classical implementation of the SR technique, in order to further
    explore performance improvements, produce images that are significantly sharper, and
    induce the learning of more powerful upscaling filters with integrated enhancement effects.
    As a result, it extends the potential of applying RAISR to improve low quality assets
    generated by low cost cameras, as well as fosters the eventual implementation of robust
    image enhancement methods powered by the use of quantum computation.

10
  • ALISSON PATRICK MEDEIROS DE LIMA
  • Uma Abordagem para Controle de Elasticidade Dinâmica Voltada a Sistemas Cloud-Network definidos por Slices
  • Orientador : AUGUSTO JOSE VENANCIO NETO
  • MEMBROS DA BANCA :
  • AUGUSTO JOSE VENANCIO NETO
  • LILIANE RIBEIRO DA SILVA
  • NELIO ALESSANDRO AZEVEDO CACHO
  • RAFAEL PASQUINI
  • SILVIO COSTA SAMPAIO
  • Data: 31/07/2019

  • Mostrar Resumo
  • O projeto de mecanismos de controle de elasticidade eficientes que visam alocação dinâmica de recursos é crucial para aumentar a eficiência de sistemas definidos por cloud-network slices. Os mecanismos de controle de elasticidade atuais propostos para ambientes de nuvem ou fatia de rede consideram apenas recursos de nuvem ou de rede, e seguem um modelo estocástico para orquestrá-los. Sistemas cloud-network definidos por slices obterão ganhos substanciais desses mecanismos somente se considerarem recursos de nuvem e de rede de maneira integrada. Além disso, eles devem permitir uma orquestração rápida dos respectivos recursos, porém preservando o desempenho e o isolamento dos slices como um todo. Neste trabalho, propomos uma abordagem voltada ao controle dinâmico de elasticidades de fatias cloud-network. Um protótipo foi elaborado, e seus resultados preliminares sugerem que a abordagem se apresenta como uma solução viável para fornecer elasticidade em ambientes definidos por cloud-network slices.


  • Mostrar Abstract
  • The design of efficient elasticity control mechanisms for dynamic resource allocation is crucial to increase the efficiency of future cloud-network sliced networks. Current elasticity control mechanisms proposed for cloud or network-slice environments only consider cloud or network resources. Cloud-network sliced networks will obtain substantial gains from these mechanisms only if they consider both cloud and network resources in an integrated fashion. Moreover, they must enable a fast enough orchestration of these resources but preserving the performance and isolation of the cloud-network slices. In this work, we propose a elasticity control approach to dynamically control and manage the orchestration of resources in cloud-network slice-defined systems. A prototype was developed, and its preliminary results suggest that the proposing approach is a viable solution to provide elasticity in environments defined by cloud-network slices.

11
  • SEBASTIÃO RICARDO COSTA RODRIGUES
  • Um framework para integração de plataformas de aprendizado de programação e computação desplugada

  • Orientador : EDUARDO HENRIQUE DA SILVA ARANHA
  • MEMBROS DA BANCA :
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • ROBERTO ALMEIDA BITTENCOURT
  • Data: 31/07/2019

  • Mostrar Resumo
  • O mundo contemporâneo tem exigido indivíduos cada vez mais capacitados quanto ao uso das tecnologias digitais, independentemente da área de atuação. As habilidades do Pensamento Computacional (PC) representam um diferencial a quem as possui. Percebendo essa importância, vários países desenvolvidos têm implementado estratégias para o desenvolvimento de tais habilidades o mais cedo possível, ainda na educação de nível fundamental, através de propostas de reformulação de seus currículos educacionais. Ensinar a programar, que é uma das habilidades do PC mais ligadas à computação, é um desafio que tem despertado o interesse da comunidade científica mundo à fora. Várias abordagens de ensino de programação, como os jogos digitais, paradigmas de programação (visual baseada em blocos), plataformas gamificadas, robótica, entre outras, têm sido propostas. No Brasil, principalmente na rede pública de ensino, onde há diversos problemas de infraestrutura tecnológica, como a falta de computadores, laboratórios e Internet, há dificuldades em realizar intervenções voltadas ao aprendizado de programação. A proposta deste trabalho é apresentar um framework que possibilite a integração de objetos tangíveis à plataformas de ensino de programação existentes através de técnicas de Visão Computacional e abordagens baseadas em Computação Desplugada.


  • Mostrar Abstract
  • The world in today has required more and more individuals who are capable about the use of technology regardless of the area of activity. Programming teaching has been a recurring research target in the scientific community. Several programming teaching approaches like digital games, programming paradigms (visual block-based), platforms of gamification, robotics, among others has been proposed. In Brazil, mainly in the public school system, where there are several problems of technological infrastructure, such as lack of computers, laboratories and internet, turns on hard make interventions towards teaching programming. This work aims to present a framework that allows the integration of tangible objects to existing programming teaching platforms through Computer Vision techniques and approaches based on Computer Science Unplugged (CS Unplugged). For that, studies were carried out that looked for evidence that could provide answers to the research questions around the goal of this work. A Systematic Literature Review (SLR), an exploratory and another experimental study were carried out aim prospecting requirements and contextual analysis, implementation of suitable techniques and strategies, and evaluation if the proposed approach fits well in a programming teaching context. The results evidenced the possibility concreteness integration of educational platforms based on block-based visual programming by Computer Vision techniques with CS Unplugged activities and it gives a positive experience in the programming teaching-learning process. It can be concluded that the proposed approach, which aims to promote the integration of tangible objects with programming teaching platforms, presents advantages by providing a useful experience by bringing constructivist activities closer to the virtual resources made available by digital programming platforms.

12
  • César Augusto Perdigão Batista
  • KNoT-FI: Um Ambiente Integrado baseado no FIWARE para Desenvolvimento de Aplicações de Internet das Coisas 

     

  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • EVERTON RANIELLY DE SOUSA CAVALCANTE
  • GIBEON SOARES DE AQUINO JUNIOR
  • KIEV SANTOS DA GAMA
  • THAIS VASCONCELOS BATISTA
  • Data: 05/08/2019

  • Mostrar Resumo
  • A Internet das Coisas (IoT) está criando novos serviços e aplicações em vários domínios, incluindo redes elétricas inteligentes, transporte inteligente, assistência médica e residências inteligentes. Como consequência, emerge um complexo ecossistema de aplicações, serviços e dispositivos físicos e virtuais interconectados, caracterizados por um alto grau de heterogeneidade. Por conta disso, plataformas de middleware são consideradas alternativas para mitigar esse problema, as quais são propostas para abstrair as especificidades dos dispositivos, promover a interoperabilidade entre eles e alavancar o desenvolvimento de serviços e aplicações. Nesse contexto, a KNoT e a FIWARE são exemplos de plataformas de código aberto com um propósito complementar. Enquanto a KNoT é um middleware baseado em gateway para incorporar conectividade a dispositivos e encaminhar mensagens entre eles e aplicativos, a FIWARE fornece um ecossistema rico com APIs padronizadas para o desenvolvimento de aplicações de IoT. Com o objetivo de combinar a capacidade da KNoT de integrar uma infinidade de dispositivos com as abstrações de alto nível fornecidas pela plataforma FIWARE, este trabalho apresenta o ambiente KNoT-FI. Desta forma, a integração entre a KNoT e a FIWARE concretiza-se no sentido de facilitar o desenvolvimento de aplicações de IoT e utilizar, continuamente, capacidades de dispositivos com ou sem conexão nativa à Internet através das interfaces avançadas da FIWARE. Esse trabalho também apresenta a validação do ambiente através de uma aplicação real que gerencia iluminação, temperatura e som ambiente. Por fim, foi realizada uma avaliação quantitativa, por meio de experimentos computacionais, com o objetivo de mensurar o tamanho do overhead causado pela integração entre as plataformas FIWARE e KNoT.


  • Mostrar Abstract
  • With the rising popularity of IoT, several platforms have been proposed for supporting the development of IoT applications. KNoT and FIWARE are examples of open-source platforms with a complementary purpose. While KNoT is a gateway-based middleware to embed connectivity into devices and route messages between them and applications, FIWARE provides a rich ecosystem with standardized APIs for developing IoT applications. Aiming at combining the KNoT capability of integrating a plethora of devices with the high-level abstractions provided by the FIWARE platform, this work presents the KNoT-FI environment. It integrates KNoT and FIWARE towards easing the development of IoT applications and seamlessly using capabilities of devices with or without native Internet connection through the FIWARE advanced interfaces. This work also presents a validation of KNoT-FI in the development of a real-world application that automatically manages lighting, temperature, and ambient sound in smart buildings.

13
  • EDUARDO HENRIQUE ROCHA DO NASCIMENTO
  • Aplicando Gamificação no Ensino de Teste de Software

  • Orientador : ROBERTA DE SOUZA COELHO
  • MEMBROS DA BANCA :
  • ROBERTA DE SOUZA COELHO
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • ANDRE MAURICIO CUNHA CAMPOS
  • CHARLES ANDRYE GALVAO MADEIRA
  • AYLA DÉBORA DANTAS DE SOUZA REBOUÇAS
  • Data: 06/08/2019

  • Mostrar Resumo
  • Teste de Software é uma importante subárea da Engenharia de Software, cuja responsabi-
    lidade é garantir a qualidade do produto de software por meio de suas técnicas e práticas.

    As atividades de teste se fazem presente em todo o processo de construção do software,

    desde a especicação do software, transitando pelo desenvolvimento, até a sua implemen-
    tação. Mesmo tendo um vital envolvimento no processo de desenvolvimento do software,

    o Teste de Software tem suas técnicas subutilizadas por empresas, onde tal negligencia-
    mento impacta diretamente na qualidade do produto. Alguns dos motivos apontados pela

    literatura para este fato é que as atividades de teste são tidas como custosas, difíceis e até
    mesmo tediosas. Este problema é evidenciado tanto na indústria quanto na academia, no
    qual existe uma certa correlação, onde alguns problemas são originados na academia e se
    estendem até a indústria. Como alternativa para lidar com problemáticas desta natureza
    existe a gamicação, que trata-se do uso de elementos de jogos em contextos que não

    sejam um jogo, objetivando aumentar o engajamento e motivação das pessoas envolvi-
    das naquele contexto. Estudos recentes tem mostrado a crescente adoção de estratégias

    gamicadas no ensino de Teste de Software para tratar problemas relacionados à desmo-
    tivação de alunos. Dado este contexto, o presente trabalho tem como objetivo utilizar

    da gamicação, unida à conceitos de Teste de Software, no atendimento da desmotivação
    de estudantes inerente à realização de atividades especícas de teste de software. Para

    alcançar esse objetivo, foram realizados uma pesquisa exploratória em busca de metodo-
    logias de gamicação e o um mapeamento sistemático da literatura que reuniu trabalho

    acerca do uso da gamicação e jogos em Teste de Software. A metodologia de gamicação
    escolhida foi a Level Up, que descreve um processo iterativo e sistemático para concepção

    de abordagens gamicadas voltadas para a educação. Esta metodologia provê um con-
    junto de etapas que compreende a ideação, experimentação e evolução da abordagem.

    A avaliação da abordagem gamicada proposta foi realizada na etapa de experimenta-
    ção, onde dois grupos de alunos participaram de duas atividades, uma não gamicada

    e outra gamicada, e foram submetidos a um questionário que buscou coletar aspectos
    relacionados à satisfação dos alunos e aceitação da abordagem gamicada. As informações
    oriundas das respostas do questionário e das obervações realizadas durante a aplicação da
    atividade serão utilizadas para ajustar a abordagem proposta na etapa de evolução, que
    ainda não foi executada. Os resultados da avaliação mostraram que a abordagem gami-
    cada teve impacto sobre os estudantes, onde foi possível identicar aspectos relacionados
    à interação dos alunos e algumas inconsistências da abordagem proposta que precisarão
    ser readaptadas ou removidas.


  • Mostrar Abstract
  • Software Testing is an essential subarea of Software Engineering, in which the responsibi-
    lity is to make sure the software quality through its techniques and practices. The testing

    activities are present in the entire process of software construction, from the software
    specication, going by development, until the implementation. Even have been a vital

    involvement in the development software process, Software Testing has its techniques un-
    derused by software companies, where the negligence has a direct impact on software

    quality. Some reason pointing out by literature for this fact is the testing activities are
    costly, dicult and tedious. This problem is found in both industry and academy, in which
    there is a correlation, where some problems are born in the academy and extend into the
    industry. As a possible solution to treat this kind of problem there is the gamication,
    that conceptually is the use of game design elements in environments non-game, with the
    purpose of increasing engagement and motivation of people involved in that environment.
    Recent studies have shown the grown adoption of gamied strategies in the Software

    Testing teaching to treat motivational problems of students. Given this context, this re-
    search work intends to use the gamication joined Software Testing topics to deal with

    the lack of motivation of students to make specic testing activities. To achieve this ob-
    jective, were carried out a search in the literature seeking gamication methodologies and

    a systematic mapping study that gathered studies about the application of gamication
    and games in Software Testing area. The gamication methodology chosen was the Level
    Up, that describes an interactive and systematic process to concept gamied approaches
    for educational environments. This methodology provides a set of stages that cover the
    ideate stage, experimentation and evolution of the approach. The evaluation of the gami-
    ed approach proposal was performed in the experimentation stage, where two groups of

    students taking part in two activities, one non-gamied and another gamied, and were
    submitted to answer a qualitative questionnaire about satisfaction and acceptation of the

    gamied approach. The information collected with the questionnaire and the observati-
    ons made during the experimentation will be used to adjust the approach proposed in the

    evolution stage, not yet performed. The results of the evaluation shown that the gamied
    approach did impact in the students, where was possible identify aspects related with
    the interaction of students and some inconsistencies of the approach that will need to be
    readapted or removed.

14
  • ADELSON DIAS DE ARAÚJO JÚNIOR
  • Predspot: Predizendo Hotspots Criminais com Aprendizado de Máquina

  • Orientador : NELIO ALESSANDRO AZEVEDO CACHO
  • MEMBROS DA BANCA :
  • MARJORY CRISTIANY DA COSTA ABREU
  • NELIO ALESSANDRO AZEVEDO CACHO
  • LEONARDO CESAR TEONACIO BEZERRA
  • OURANIA KOUNADI
  • Data: 24/09/2019

  • Mostrar Resumo
  • Cidades mais inteligentes estão amplamente adotando infraestrutura e análise de dados em tomada de decisão de segurança pública. Apesar de que policiamento em manchas criminais tem mostrado benefícios na redução de crimes, estudos anteriores sugerem que a adoção de técnicas preditivas pode ajudar a produzir estimativas mais precisas da concentração de crimes no futuro. Nesse trabalho, propomos um framework genérico para gerar futuros hotspots a partir de descritores espaçotemporais, e também informações geográficas extraídas do OpenStreetMap. Implementamos um pacote em Python chamado predspot para suportar predições de manchas criminais precisas seguindo os passos sugeridos no framework. Para avaliar a abordagem preditiva contra a metodologia tradicionalmente implementada pelo departamento de polícia de Natal, comparamos dois métodos de mapeamento de crime (KGrid e KDE) e dois algoritmos eficientes de aprendizado de máquina (Random Forest e Gradient Boosting) em doze cenários criminais, considerando roubo, violência e crimes de drogas. Os resultados indicam que nossa abordagem preditiva estima manchas criminais de 1,6 a 5,1 vezes melhor do que a metodologia dos analistas. Uma análise de importância do descritores foi extraída dos modelos para explicar o quanto as variáveis selecionadas ajudaram nas previsões e dar origem a discussões a respeito da modelagem aplicada.


  • Mostrar Abstract
  • Smarter cities are largely adopting data infrastructure and analysis to improve decision making for public safety issues. Although traditional hotspot policing methods have shown benefits in reducing crime, previous studies suggest that the adoption of predictive techniques can produce more accurate estimates for future crime concentration. In this work we propose a framework to generate future hotspots using spatiotemporal features and other geographic information from OpenStreetMap. We implemented an open source Python-package called predspot to support efficient hotspots prediction following the steps suggested in the framework. To evaluate the predictive approach against the traditional methodology implemented by Natal’s police department, we compared two crime mapping methods (KGrid and KDE) and two efficient machine learning algorithms (Random Forest and Gradient Boosting) in twelve crime scenarios, considering burglary, violent and drugs crimes. The results indicate that our predictive approach estimate hotspots 1.6-5.1 times better than the analysts baseline. A feature importance analysis were extracted from the models to account with how much the selected variables helped the predictions and to discuss the modelling strategy we conducted.

15
  • DENIS JOSÉ SOUSA DE ALBUQUERQUE

  • Identificação de dificuldades e questões de interesse de desenvolvedores de aplicações para Big Data com o framework Apache Spark

  • Orientador : UMBERTO SOUZA DA COSTA
  • MEMBROS DA BANCA :
  • UMBERTO SOUZA DA COSTA
  • MARTIN ALEJANDRO MUSICANTE
  • MARCUS ALEXANDRE NUNES
  • PLACIDO ANTONIO DE SOUZA NETO
  • Data: 27/09/2019

  • Mostrar Resumo
  • Este trabalho de pesquisa busca identificar e classificar as principais dificuldades e questões de interesse dos desenvolvedores de aplicações para o processamento de Big Data utili- zando o framework Apache Spark. Nesse sentido, utilizamos o algoritmo Latent Dirichlet Allocation para realizar a modelagem probabilística de tópicos em informações extraí- das do Stack Overflow, uma vez que não é viável a inspeção manual de todo o conjunto de dados. A partir do conhecimento obtido pelo estudo abrangente de trabalhos relacionados, estabelecemos e aplicamos uma metodologia baseada nas práticas usualmente empregadas. Construímos aplicações Spark para execução automatizada das tarefas, tais como a seleção e preparação dos dados, o agrupamento de tópicos – aplicação do algoritmo de modelagem probabilista para várias configurações – e a computação de métricas. Análises sobre os resultados obtidos foram conduzidas por um grupo composto por 5 pesquisadores: dois professores doutores, um aluno doutorando e dois alunos mestrandos. A partir da análise semântica dos rótulos atribuídos para cada um dos tópicos identificados, uma taxonomia de interesses e dificuldades foi construída. Por fim, estabelecemos um ranqueamento dos temas mais importantes de acordo com as várias métricas calculadas e comparamos os métodos e resultados de nosso estudo com os apresentados em outro trabalho.


  • Mostrar Abstract
  • This research aims to identify and classify the main difficulties and issues of interest of Apache Spark application developers regarding the framewok usage. For this purpose, we use the Latent Dirichlet Allocation algorithm to perform a probabilistic modeling of topics on information extracted from Stack Overflow, since the manual inspection of the entire dataset is not feasible. From the knowledge obtained by the comprehensive study of related works, we established and applied a methodology based on the practices usually employed. We developed Spark applications for the automated execution os tasks, such as the data selection and preparation, the discovery of topics - applying the probabilistic modeling algorithm with various configurations - and metrics computation. Analyzes of the results were carried by a group of 5 researchers: two doctor professors, one doctoral student and two master students. Based on the semantic analysis of the labels assigned to each of the identified topics, a taxonomy of interests and difficulties was constructed. Finally, we ranked the most important themes according to the various calculated metrics and compared the methods and results of our study with those presented in another work.

16
  • TIAGO HENRIQUE DA SILVA LEITE
  • Projetos de hackathons e game jams continuam ou não? Um estudo sobre a continuidade de projetos desenvolvidos em eventos colaborativos de curta duração

  • Orientador : FERNANDO MARQUES FIGUEIRA FILHO
  • MEMBROS DA BANCA :
  • CLEIDSON RONALD BOTELHO DE SOUZA
  • FERNANDO MARQUES FIGUEIRA FILHO
  • UIRA KULESZA
  • Data: 21/10/2019

  • Mostrar Resumo
  • Eventos de curta duração (Time-bounded collaborative events) tais como os hackathonsgame jams, dentre outros, têm se tornado bastante populares nos últimos anos e vem chamando a atenção da comunidade científica. As pesquisas existentes têm estudado vários aspectos desses eventos, enquanto que o pós-evento, i.e. o que ocorre após a realização desses eventos, tem tido pouca atenção. Além disso, os estudos existentes são muito limitados a eventos da mesma natureza, sejam hackathons cívicos, industriais ou acadêmicos, assim como para os game jams, onde os trabalhos existentes contemplam apenas um tipo desses eventos. Pesquisas sobre os fenômenos que envolvem o pós-evento, numa granularidade mais ampla, ainda são escassas. Neste estudo, abordamos esta lacuna apresentando os resultados de um estudo exploratório, trazendo análises de dois grandes hackathons e um global game jam. Grande parte dos participantes destes eventos expressaram a intenção em continuar com as relações sociais que foram desenvolvidas nos mesmos. Entretanto indicaram que não há planejamento em continuar o desenvolvimento dos projetos desenvolvidos, apesar de haver interesse em trabalhar noutros projetos com a equipe formada no evento. O objetivo principal é validar e aprofundar estes questionamentos, trazendo contribuições sobre os aspectos positivos e negativos da descontinuidade desses projetos e das manutenção dos laços sociais formados durante os eventos.


  • Mostrar Abstract
  • Time-bounded collaborative events, such as hackathons, game jams, among others, have become quite popular in recent years and have been drawing the attention of the scientific community. Existing research has studied various aspects of these events, while the post-event, i.e. what occurs after these events, has received little attention. In addition, existing studies are very limited to events of the same nature, such as civic hackathons, industrial or academic, as well as for game jams, where the existing works contemplate only one type of such events. Research on the phenomena surrounding the post-event, on a wider granularity, is still scarce. In this study, we address this gap by presenting the results of an exploratory study, featuring analyses of two large hackathons and a global game jam. Most participants in these events expressed their intention to continue with the social relations that were developed in them. However, they indicated that there is no planning to continue the development of the projects developed, although there is interest in working on other projects with the team formed at the event. The main objective is to validate and deepen these questions, bringing contributions to the positive and negative aspects of the discontinuity of these projects and the maintenance of the social bonds formed during the events.

17
  • LUIZ RANYER DE ARAÚJO LOPES
  • Implementação do Algoritmo Criptográfico Papílio Versátil na Biblioteca OpenSSL

  • Orientador : BENJAMIN RENE CALLEJAS BEDREGAL
  • MEMBROS DA BANCA :
  • AUGUSTO JOSE VENANCIO NETO
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • ISAAC DE LIMA OLIVEIRA FILHO
  • KARLA DARLENE NEPOMUCENO RAMOS
  • Data: 22/10/2019

  • Mostrar Resumo
  • Em um mundo globalizado e altamente exposto, a informação é um dos bens mais valiosos no mundo. Com o crescente aumento das tecnologias de informações e o grande volume de dispositivos conectados e interligados,internet das coisas (IoT), o que contribui com o crescimento da quantidade de dados transmitidos, os ataques cibernéticos passaram a pertencer ao cotidiano das empresas e das pessoas. Estes ataques podem representar riscos diretos aos usuários. Desta forma, existe uma demanda crescente em manter essas informações livres de riscos e perigos quanto sua integridade, autenticidade e confidencialidade. Neste sentido, a segurança da informação busca a proteção dessas informações implementando políticas de segurança e mecanismos de proteção de dados, que devem contemplar o adequado equilíbrio dos aspectos humanos e técnicos da segurança da informação. Sobre os mecanismos de proteção, a criptografia, um dos mais utilizados para a mantê-los seguros. Esta proteção está diretamente relacionada aos tipos de algoritmos criptográficos, que podem ser utilizados nos mais diversos contextos. Neste caso, aborda-se o uso de algoritmos criptográficos inseridos no processo de comunicação entre cliente/servidor via ferramenta OpenSSL. Com o intuito de investigar o nível de segurança oferecido pelo OpenSSL, este trabalho aborda a integração do algoritmo de criptografia Papílio Versátil ao conjunto de cifras integradas ao próprio OpenSSL. Além disso busca-se mensurar o nível de segurança inerente ao uso do Papílio Versátil, dentro do processo de proteção na transmissão de dados entre cliente e servidor. Através de uma avaliação experimental foi possível validar a implementação realizada. Pode-se observar que as requisições realizadas tiveram um pequeno acréscimo médio em termos de latência, mas esse custo é compensado através da ampliação da segurança na plataforma.


  • Mostrar Abstract
  • In a globalized and highly exposed world, information is one of the most valuable assets in the world. With the increasing increase of information technologies and the large volume of connected and interconnected devices, internet of things (IoT), which contributes to the growing amount of transmitted data, cyber attacks have become part of the daily lives of businesses and people. . These attacks can pose direct risks to users. Thus, there is a growing demand to keep this information free of risks and dangers regarding its integrity, authenticity and confidentiality. In this sense, information security seeks to protect this information by implementing security policies and data protection mechanisms, which must address the appropriate balance of human and technical aspects of information security. About the protection mechanisms, encryption, one of the most used to keep them safe. This protection is directly related to the types of cryptographic algorithms that can be used in the most diverse contexts. In this case, we approach the use of cryptographic algorithms inserted in the process of communication between client / server via OpenSSL tool. In order to investigate the level of security offered by OpenSSL, this paper addresses the integration of the Papillium Versatile encryption algorithm to the set of ciphers integrated with OpenSSL itself. In addition, we seek to measure the level of security inherent in the use of Versatile Papillion, within the process of protection in data transmission between client and server. Through an experimental evaluation it was possible to validate the implementation performed. It can be observed that the requests made had a small average increase in latency, but this cost is offset by the increased security on the platform.


18
  • MICKAEL RANINSON CARNEIRO FIGUEREDO
  • Uma Abordagem de Recomendação Turística Multiusuários baseada em Fotos de Redes Sociais

  • Orientador : NELIO ALESSANDRO AZEVEDO CACHO
  • MEMBROS DA BANCA :
  • NELIO ALESSANDRO AZEVEDO CACHO
  • BRUNO MOTTA DE CARVALHO
  • ANTONIO CARLOS GAY THOME
  • DANIEL SABINO AMORIM DE ARAUJO
  • JOSEFINO CABRAL MELO LIMA
  • Data: 27/11/2019

  • Mostrar Resumo
  • O setor de turismo é uma das atividades econômicas mais relevantes nos dias de hoje. Desta forma, é importante investir em diferentes abordagens para criar uma ótima experiência durante as viagens dos visitantes em um único destino. Em um contexto de textit Smart Cities, a idéia de textit Smart Destination aparece como uma solução para melhorar a experiência do turismo usando tecnologia para apoiar os visitantes na tomada de decisão em um textit Smart City. O estudo proposto cria uma abordagem para apoiar um textit Smart Tourism Destination para criar um melhor planejamento de viagem com base em fotos de mídias sociais. A pesquisa tem como objetivo criar recomendações para um único ou grupo de turistas utilizando técnicas de classificação de imagens e inferência fuzzy para mapear as preferências dos turistas. Através do sistema de inferência fuzzy e usando o conhecimento de especialistas em turismo dentro de um sistema de recomendação, a abordagem proposta é capaz de criar recomendações personalizadas usando atrações de uma textit Smart Destination.


  • Mostrar Abstract
  • The tourism sector is one of the most relevant economic activity in nowdays. In this way, it is important invest in different approaches to create a great experience during visitors trips in one destination. In a context of Smart Cities, the ideia of Smart Destination appears as one solution to improve the tourism experience using techonlogy to support visitors in one Smart City. The proposed study creates an approach to support a Smart Tourism Destination to create a better trip planning based on photos from social medias. The research aims to create recommendation to single or group of tourists using techniques of image classification and fuzzy inference to map tourists preferences. Through the fuzzy inference system and using the tourism experts knowledge inside a recommendation system, the proposed approach is able to create personalized recommendations using attractions from one Smart Destination

19
  • HORTEVAN MARROCOS FRUTUOSO
  • Transdutores Adaptativos Programáveis e sua Aplicação no Desenvolvimento de Agentes de Diálogos

  • Orientador : BENJAMIN RENE CALLEJAS BEDREGAL
  • MEMBROS DA BANCA :
  • ANDERSON PAIVA CRUZ
  • ANNE MAGALY DE PAULA CANUTO
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • CARLOS AUGUSTO PROLO
  • HELIDA SALLES SANTOS
  • Data: 13/12/2019

  • Mostrar Resumo
  • O presente trabalho tem como objetivo apresentar um modelo de agente de diálogo construído a partir do Transdutor Adaptativo Programável, dispositivo baseado em um Autômato Finito Determinístico com tecnologia adaptativa capaz de estender sua própria estrutura de estados e regras de transições, de forma que a linguagem reconhecida pelo transdutor torna-se uma subconjunto limitado da linguagem natural, porém expansível. Este dispositivo então é utilizado para modelar um agente de diálogos capaz de receber sentenças em português e reagir a estas sentenças apresentando um comportamento semanticamente compatível com a sentença passada pelo usuário, respondendo a este conforme as denições registradas na base de conhecimento do agente. Agregando-lhe ainda a capacidade de permitir a expansão desta base de conhecimento a partir das próprias sentenças do usuário, através de uma sintaxe adequada para tal.


  • Mostrar Abstract
  • The present work aims to present a dialog agent model built from the Programmable Adaptive Transducer, a device based on a deterministic nite automaton with adaptive technology capable of extending its own state structure and rules of transitions, so that
    the recognized language by the transducer becomes a limited subset of natural but expandable language. This device is then used to model a dialog agent capable of receiving sentences in Portuguese and reacting to these sentences presenting a behavior semantically compatible with the sentence passed by the user, responding to it according to the denitions registered in the agent's knowledge base. Adding to it the ability to allow the expansion of this knowledge base from the user's own sentences, through an appropriate syntax for such.

Teses
1
  • MAXWEEL SILVA CARMO
  • Um Arcabouço para Compartilhamento Eficiente de WLANs WiFi por Fatiamento de Rede no Contexto de Redes Ultra Densas 5G

  • Orientador : AUGUSTO JOSE VENANCIO NETO
  • MEMBROS DA BANCA :
  • AUGUSTO JOSE VENANCIO NETO
  • DANIEL CORUJO
  • GIBEON SOARES DE AQUINO JUNIOR
  • RUI LUIS ANDRADE AGUIAR
  • THAIS VASCONCELOS BATISTA
  • Data: 29/01/2019

  • Mostrar Resumo
  • A realização de casos de uso inovadores envolvendo comunicação de dados desafiou as abordagens de redes de comunicação estabelecidas. Esta tese tem como objetivo evoluir a atual tecnologia de sistemas WLAN Wi-Fi com acesso compartilhado para enfrentar os desafios de oferecer eficientemente o aumento da demanda maciça de dados móveis em casos de uso 5G, nomeadamente UDN e URLLC. Foram investigados novos aspectos complementares de tecnologias emergentes em sistemas 5G, nomeadamente virtualização de funções de redes [7], névoa computacional [8], redes definidas por software, e outros, para criar um arcabouço único e inovador voltado as redes WLAN Wi-Fi de acesso compartilhado. Esta tese propõe o arcabouço WISE (WLAN slIcing SErvice), o qual aplica a técnica de fatiamento de rede (network slicing) pela primeira vez em CPEs (Consumer Premise Equipments) habilitados para WLAN Wi-Fi de acesso compartilhado, que encontram-se localizados mais próximo de usuários e coisas, na perspectiva de oferecer serviços de rede diferenciados com isolamento, Independência e desempenho aumentado. Além disso, o WISE explora a tecnologia de névoa computacional como maneira de expandir as capacidades computacionais de CPEs com configuração de balcão, de modo a permitir que parte das funcionalidades do arcabouço alvo sejam hospedados.


  • Mostrar Abstract
  • The realization of innovative use cases involving data communication has challenged the established communication networking approaches. This thesis aims to evolve current WLAN Wi-Fi systems with shared access facilities to meet the challenges of efficiently increasing the massive demand for mobile data in 5G use cases, namely UDN (Ultra-Dense Networking) and URLLC (Ultra-reliable and low-latency Communications). New complementary aspects of emerging technologies in 5G systems, namely, virtualization of network functions [7], computational fog [8], software-defined networking, and others, were investigated in the prospect to create a unique and innovative framework for Wi-Fi WLAN-sharing systems. This thesis proposes the WISE framework (WLAN slIcing SErvice), which applies network slicing technique for the first time in WLAN-sharing enabled Wi-Fi CPEs (Consumer Premise Equipments) located closer to users and things, in perspective to offer differentiated network services featuring isolation, independence, and increased performance. Moreover, the WISE framework exploits fog computing technology as a way to expand the computational capabilities of off-the-shelf CPEs to afford running part of the functionalities featuring the target framework.

2
  • ITAMIR DE MORAIS BARROCA FILHO
  • Design arquitetural de aplicações para cuidados de saúde baseadas na infraestrutura da IoT

  • Orientador : GIBEON SOARES DE AQUINO JUNIOR
  • MEMBROS DA BANCA :
  • GIBEON SOARES DE AQUINO JUNIOR
  • ROSSANA MARIA DE CASTRO ANDRADE
  • THAIS VASCONCELOS BATISTA
  • UIRA KULESZA
  • VINICIUS CARDOSO GARCIA
  • Data: 08/02/2019

  • Mostrar Resumo
  • A miríade de coisas conectadas promovidas pela Internet das Coisas (IoT) e os dados capturados por elas estão tornando possível o desenvolvimento de aplicações em vários mercados, tais como transporte, edifícios, energia, casa, industria e cuidados de saúde. Em relação ao mercado de saúde, espera-se o desenvolvimento dessas aplicações como parte do futuro, uma vez que pode melhorar a e-Health e permitir que os hospitais funcionem de forma mais eficiente, e pacientes recebam melhores tratamentos. A IoT pode ser o principal facilitador para distribuição aplicações de saúde, tendo assim um potencial significativo para contribuir para a diminuição global dos custos dos cuidados de saúde, e melhorar os seus resultados. No entanto, há muitos desafios no desenvolvimento e implantação desse tipo de aplicação, tais como interoperabilidade, disponibilidade, performance e segurança. A natureza complexa e heterogênea das aplicações de saúde baseadas na infraestrutura da IoT dificulta o seu projeto, desenvolvimento e implantação. Também provoca um aumento no custo de desenvolvimento, bem como um problema de interoperabilidade com os sistemas existentes. Para contribuir com a solução dos desafios supracitados, esta tese tem como objetivo melhorar compreensão e sistematização da arquitetura de software das aplicações de saúde baseadas em IoT. Ela propõe uma arquitetura de referência de software, chamada Arquitetura de Referência para Aplicações de Cuidados de Saúde Baseadas em IoT (RAH), para organizar sistematicamente os principais elementos dessas aplicações, suas responsabilidades e interações, promovendo uma compreensão comum da arquitetura dessas aplicações. Para estabelecer RAH, um mapeamento sistemático de publicações sobre aplicações de saúde baseadas em IoT foi realizado, bem como um estudo sobre atributos de qualidade, táticas, padrões arquiteturais e estilos usados na engenharia de software. Como resultado, RAH apresenta conhecimento de domínio e soluções de arquitetura de software (ou seja, padrões arquiteturais e táticas) documentado usando visões arquiteturais. Para avaliar a RAH, foi realizado um estudo de caso instanciando-a para projetar a arquitetura de software de uma plataforma computacional baseada na infraestrutura da Internet das Coisas (IoT) para permitir monitoramento remoto inteligente dos dados de saúde do paciente (biometrias). Com esta plataforma, a equipe clínica pode ser alertada dos eventos de saúde que requerem intervenção imediata e então evitar complicações indesejáveis. Os resultados evidenciaram que RAH é uma arquitetura de referência viável para o desenvolvimento de aplicações de saúde baseadas em IoT seguras, interoperáveis, disponíveis e eficientes, trazendo contribuições para as áreas de e-Health e arquitetura de software.


  • Mostrar Abstract
  • The myriad of connected things promoted by the Internet of Things (IoT) and the data captured by them is making possible the development of applications in various markets, such as transportation, buildings, energy, home, industrial and healthcare. Concerning the healthcare market, it is expected the development of these applications as part of the future, since it can improve e-Health to allow hospitals to operate more efficiently and patients to receive better treatment. The IoT can be the main enabler for distributed healthcare applications, thus having a significant potential to contribute to the overall decrease of healthcare costs while increasing the health outcomes. However, there are a lot of challenges in the development and deployment of this kind of application, such as interoperability, availability, performance, and security. The complex and heterogeneous nature of IoT-based healthcare applications makes its design, development and deployment difficult. It also causes an increase in the development cost, as well as an interoperability problem with the existing systems. To contribute to solve the aforementioned challenges, this thesis aims at improving the understanding and systematization of the IoT-based healthcare applications’ architectural design. It proposes a software reference architecture, named Reference Architecture for IoT-based Healthcare Applications (RAH), to systematically organize the main elements of these applications, its responsibilities and interactions, promoting a common understanding of these applications’ architecture. To establish RAH, a systematic mapping study of existing publications regarding IoT-based healthcare applications was performed, as well the study about quality attributes, tactics, architectural pattern and styles used in software engineering. As a result, RAH presents domain knowledge and software architectural solutions (i.e., architectural patterns and tactics) documented using architectural views. To assess RAH, a case study was performed by instantiating it to design the software architecture of a computational platform based on the Internet of Things (IoT) infrastructure to allow the intelligent remote monitoring of the patient’s health data (biometrics). With this platform, the clinical staff can be alerted of the health events that require immediate intervention and then prevent unwanted complications. Results evidenced that RAH is a viable reference architecture to guide the development of secure, interoperable, available, and efficient IoT-based healthcare applications, bringing contributionsfor the areas of e-Health and software architecture.

3
  • ROMULO DE OLIVEIRA NUNES
  • Seleção Dinâmica de Atributos para Comitês de Classificação

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • MEMBROS DA BANCA :
  • ANNE MAGALY DE PAULA CANUTO
  • ARAKEN DE MEDEIROS SANTOS
  • DANIEL SABINO AMORIM DE ARAUJO
  • GEORGE DARMITON DA CUNHA CAVALCANTI
  • MARJORY CRISTIANY DA COSTA ABREU
  • Data: 22/02/2019

  • Mostrar Resumo
  • Em aprendizado de máquina (AM), o pré-processamento dos dados tem como objetivo aprimorar a qualidade dos dados que serão utilizados, visando apresentá-los em uma forma adequada para a técnica de AM escolhida. A seleção de atributos é uma de suas principais etapas. Seu principal objetivo é escolher o subconjunto que melhor represente o conjunto de dados, permitindo a redução da dimensionalidade e um possível aumento na precisão dos classificadores. Existem diferentes abordagens para se realizar a seleção de atributos. A a Seleção Dinâmica é uma delas e parte do princípio de que cada instância é única e que melhores resultados são obtidos quando se seleciona um subconjunto de atributos para cada instância em vez de um único subconjunto para toda a base de dados. Uma vez que uma representação mais compacta dos dados foi selecionada, o próximo passo na classificação dos dados é a escolha do modelo a ser utilizado. Esse modelo pode ser formado por um único classificador ou por um sistema de combinação de classificadores, conhecido como Comitês de classificadores, que pode ser definido como a combinação múltiplos classificadores que serão utilizados para gerar uma resposta final para o sistema através da combinação de suas respostas individuais. Para que esses sistemas apresentem melhor desempenho que um classificador individual é necessário promover a diversidade entre os componentes que formam o comitê, isto é, que os componentes do sistema não cometam erros nos mesmos padrões. Por este motivo, a diversidade tem sido considerada um dos aspectos mais importantes no projeto de comitês, já que não existe vantagem na combinação de métodos de classificação idênticos. O objetivo deste trabalho é utilizar a seleção dinâmica de atributos em sistemas de combinação de classificadores. Para isso, foram desenvolvidas três versões que realizam essa adaptação de maneira a gerar a diversidade entre os classificadores base. As versões foram comparadas utilizando diferentes taxas de seleção e quantidade de classificadores, logo após, a melhor versão encontrada foi comparada com outros métodos encontrados na literatura.


  • Mostrar Abstract
  • In machine learning, the data preprocessing has the aim to improve the data quality, through to analyze and to identify of problems in it. So, the machine learning technique will receive the data of a good quality. The feature selection is one of the most important pre-processing phases. Its main aim is to choose the best subset that represents the dataset, aiming to reduce the dimensionality and to increase the classifier performance. There are different features selection approaches, on of them is the Dynamic Feature Selection. The Dynamic Feature Selection selects the best subset of attributes for each instance, instead of only one subset for a full dataset. After to select a more compact data representation, the next step in the classification is to choose the model to classify the data. This model can be composed by a single classifier or by a system with multiples classifiers, known as Ensembles classifier. These systems to combine the output to obtain a final answer for the system. For these systems to get better performance than a single classifier it is necessary to promote diversity between the components of the system. So, it is necessary that the base classifiers do not make mistakes for the same patterns. For this, the diversity is considered one of the most important aspects to use ensembles. The aim of the work is to use the Dynamic Feature Selection in Ensembles systems. To this,  three versions were developed to adapt this feature selection and to create diversity between the classifiers of the ensemble. The versions were compared using different selection rates in an ensemble with five classifiers. After this, the best version was tested with different ensemble sizes.

4
  • RUI EDUARDO BRASILEIRO PAIVA
  • Uma extensão de overlaps e naBL-Álgebras para reticulados.

  • Orientador : REGIVAN HUGO NUNES SANTIAGO
  • MEMBROS DA BANCA :
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • FLAULLES BOONE BERGAMASCHI
  • JORGE PETRUCIO VIANA
  • MARCO CERAMI
  • REGIVAN HUGO NUNES SANTIAGO
  • UMBERTO RIVIECCIO
  • Data: 05/08/2019

  • Mostrar Resumo
  • Funções overlap foram introduzidas como uma classe de funções de agregação bivariadas sobre o intervalo [0, 1] para serem aplicadas no campo de processamento de imagens. Muitos pesquisadores começaram a desenvolver a teoria das funções overlap para explorar suas potencialidades em diferentes cenários, tais como problemas que envolvem classificação ou tomada de decisão. Recentemente, uma generalização não-associativa das BL-álgebras de Hájek (naBL-álgebras) foram investigadas sob a perspectiva de funções overlap como aplicação residuada. Neste trabalho, generalizamos a noção de overlap para o contexto de reticulados e introduzimos uma definição mais fraca, chamada de quase-overlap, que surge da retirada da condição de continuidade. Para este fim, as principais propriedades de (quase-) overlap sobre reticulados limitados, a saber: soma convexa, migratividade, homogeneidade, idempotência e lei de cancelamento são investigadas, bem como uma caracterização de overlap arquimedianas é apresentada. Além disso, formalizamos o princípio de residuação para o caso de funções quase-overlap sobre reticulados e suas respectivas implicações induzidas, bem como revelamos que a classe de funções quase-overlap que cumprem o princípio de residuação é a mesma classe de funções contínuas segundo a topologia de Scott. Como consequência, fornecemos uma nova generalização da noção de naBL-álgebras baseadas em overlap sobre reticulados.


  • Mostrar Abstract
  • Overlap functions were introduced as a class of bivariate aggregation functions on [0, 1] to be applied in the image processing field. Many researchers have begun to develop overlap functions to explore their potential in different scenarios, such as problems involving classification or decision making. Recently, a non-associative generalization of Hájek’s BL-algebras (naBL-algebras) were investigated from the perspective of overlap functions as a residuated application. In this work, we generalize the notion of overlap functions for the lattice context and introduce a weaker definition, called a quasi-overlap, that arises from definition, called a quasi-overlap, that arises from the removal of the continuity condition. To this end, the main properties of (quasi-) overlaps over bounded lattices, namely: convex sum, migrativity, homogeneity, idempotency, and cancellation law are investigated, as well as an overlap characterization of Archimedian overlap functions is presented. In addition, we formalized the residual principle for the case of quasi-overlap functions on lattices and their respective induced implications, as well as revealing that the class of quasi-overlap functions that fulfill the residual principle is the same class of continuous functions according to topology of Scott. As a consequence, we provide a new generalization of the notion of naBL-algebras based on overlap over lattices.

5
  • ANTONIA JOCIVANIA PINHEIRO
  • On Algebras for Interval-Valued Fuzzy Logic

  • Orientador : REGIVAN HUGO NUNES SANTIAGO
  • MEMBROS DA BANCA :
  • REGIVAN HUGO NUNES SANTIAGO
  • JOAO MARCOS DE ALMEIDA
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • WELDON ALEXANDER LODWICK
  • JORGE PETRUCIO VIANA
  • FLAULLES BOONE BERGAMASCHI
  • GRAÇALIZ PEREIRA DIMURO
  • Data: 30/08/2019

  • Mostrar Resumo
  • Este trabalho visa introduzir outras abordagens para a lógica fuzzy com valores intervalares. Essas novas abordagens foram inspiradas nos trabalhos de Lodwick e Chalco sobre intervalos restritos. Esses intervalos restritos foram usados para estender os operadores fuzzy, nos quais eles foram chamados Operadores Intervalares Restritos de Nı́vel Único (C-operador) e suas propriedades foram estudadas. Além disso, esses operadores foram estendidos a operadores corretos chamados Operadores Intervalares Restritos. Uma nova álgebra, chamada SBCI álgebra, que surge da intervalização de BCI álgebras, também é introduzida. Essas álgebras têm como objetivo ser o modelo algébrico para lógicas fuzzy com valores intervalares que levam em conta a noção de correção.
     

    Também foi estudada uma nova classe de implicações fuzzy, chamada (T, N )-implicações. O autor investigou o comportamento das BCI/SBCI álgebras e das (T, N )-implicações na nova lógica.


  • Mostrar Abstract
  • On Algebras for Interval-Valued Fuzzy Logic

6
  • WALDSON PATRICIO DO NASCIMENTO LEANDRO
  • Processamento e Visualização Interartiva de dados Geológicos e Geofísicos em Tempo-Real usando GPUs e Estruturas de Dados

     

  • Orientador : BRUNO MOTTA DE CARVALHO
  • MEMBROS DA BANCA :
  • BRUNO MOTTA DE CARVALHO
  • JOAQUIM BENTO CAVALCANTE NETO
  • MARCIO EDUARDO KREUTZ
  • SELAN RODRIGUES DOS SANTOS
  • WILFREDO BLANCO FIGUEROLA
  • Data: 30/08/2019

  • Mostrar Resumo
  • Geofísica é uma área das ciências naturais que estuda os processos e propriedades físicas da Terra e o espaço que a envolve, bem como o uso de métodos quantitativos para a análise destas propriedades. Com o advento de novos sensores e a necessidade da aquisição de dados em maiores regiões e em maiores resoluçòes, a quantidade de dados a ser analisada aumentou muito mais rápido do que a capacidade de processá-los em tempo real em estações de trabalho tradicionais.  Além disso, se considerarmos a junção de dados de diferentes sensores para uma visualização única, temos uma tarefa complicada de ser realizada utilizando algoritmos e técnicas convencionais de visualização. Neste trabalho, nós exploramos métodos para processar em tempo real e visualizar interativamente dados geofísicos e geológicos multivariados massivos. A utilização de diversos dispositivos e métodos fazem parte das atividades cotidianas de prospecção e monitoramento nestas áreas, e ambas as áreas são beneficiadas pelo processamento rápido e pela visualização interativa, trazendo novas possibilidades de análise e interpretação destes dados massivos.


  • Mostrar Abstract
  • Geophysics is an area of natural science that is concerned with the physical processes and properties of the Earth and its surrounding space environment, as well as the use of quantitative methods for their analysis. With the advent of new sensors and the need for acquiring data over wider regions or with higher resolutions, the amount of data being analyzed has increased much more rapidly than the ability of process them in real time on regular workstations. Moreover, if we consider joining data from different sensors for simultaneously displaying them, it becomes a complicated task to perform using conventional visualization algorithms and techniques. In this work, we explore methods for processing large geophysical and geological data in real time and for visualizing massive multivariate data within interactive time. The usage of several devices and methods are part of the commonly used prospection and monitoring activities of these areas, and both benefit from faster processing and interactive visualization, bringing new analysis and interpretation possibilities of these massive datasets.

7
  • KARLIANE MEDEIROS OVIDIO VALE
  • Uma Proposta de Automatização do processo de rotulagem de Instâncias em Algoritmos de Aprendizado Semissupervisionado

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • MEMBROS DA BANCA :
  • ANNE MAGALY DE PAULA CANUTO
  • ARAKEN DE MEDEIROS SANTOS
  • DANIEL SABINO AMORIM DE ARAUJO
  • DIEGO SILVEIRA COSTA NASCIMENTO
  • FLAVIUS DA LUZ E GORGONIO
  • MARJORY CRISTIANY DA COSTA ABREU
  • Data: 22/11/2019

  • Mostrar Resumo
  • O aprendizado semissupervisionado é um tipo de aprendizado de máquina que integra os
    mecanismos de aprendizado supervisionado e não supervisionado, por isso é considerado o
    meio termo entre eles dois. No aprendizado semissupervisionado, a maioria dos rótulos do
    conjunto de treinamento são desconhecidos, mas há uma pequena parcela que possui rótulo.
    O aprendizado semissupervisionado é atraente devido ao seu potencial de utilização
    de dados rotulados e não rotulados para alcançar melhor desempenho do que o aprendizado
    supervisionado. Este trabalho consiste em, um estudo no campo da aprendizagem
    semissupervisionada e implementa mudanças na estrutura dos algoritmos self-training e
    co-training. Na literatura, é comum o desenvolvimento de pesquisas que alteram a estrutura
    destes algoritmos, no entanto, nenhuma delas propõe a variação na taxa de inclusão
    de novas instâncias no conjunto de dados rotulados, que é o principal propósito deste
    trabalho. Para atingir este objetivo, três métodos são propostos: FlexCon-G , FlexCon
    e FlexCon-C . As principais diferenças entre estes métodos são: 1) a forma como eles
    realizam o cálculo do novo valor da taxa de confiança mínima para inclusão de novas
    instâncias; 2) a estratégia utilizada na escolha do rótulo de cada instância. Para avaliar
    cada um destes métodos, foram realizados experimentos com 30 conjuntos de dados
    com características diversificadas. Os resultados indicam que os três métodos propostos
    e suas versões apresentam melhor desempenho que os métodos self-training e co-training
    originais na maioria dos casos.


  • Mostrar Abstract
  • Machine learning is a field of artficial inteligence that is dedicated to the study and
    development of computational techniques which obtain knowledge through acumulated
    experiences. According to the nature of information provided, machine learning was inicially
    divided into two types: supervised and unsupervised learning. In supervised learning,
    the data used in training have labels, while in the unsupervised learning the instances
    to be trained have no labels. Over the years the academic community started studying
    the third type of learning that is regarded as the middle ground between supervised and
    unsupervised learning and is known as semi-supervised learning. In this type of learning,
    most of training set labels are unknown, but there is a small part of data that has known
    labels.The semi-supervised learning is attractive because of its potential to use labeled
    and unlabelled data to achieve better performance than supervised learning. This paper
    consists of a study in the field of semi-supervised learning and implements changes on
    the self-training and co-training algorithms. In the literature, it´s common to develop
    researches that change the structure of these algorithms, however, none of them propose
    some variation in the rate of inclusion of new instances in the labeled data set, which is
    the main purpose of this work. In order to achieve this goal, three methods are proposed:
    FlexCon-G, FlexCon e FlexCon-C. The main diference between this methods is: 1) In the
    way that they perform the calculation of a new value for the minimum confidence rate
    to include new patterns and 2) The strategy used to choose a label of each instance. In
    order to evaluate the proposed methods, we will performed experimentations on 30 datasets
    with diversified characteristics. The obtained results indicate that the three proposed
    methods perform better than original self-training and co-training methods in most cases.

8
  • HUGO FARIA MELO
  • Identificando e Analisando as Praticas adotadas para Tratamento de Excecoes Java: Uma Perspectiva dos Desenvolvedores

  • Orientador : ROBERTA DE SOUZA COELHO
  • MEMBROS DA BANCA :
  • ROBERTA DE SOUZA COELHO
  • UIRA KULESZA
  • EIJI ADACHI MEDEIROS BARBOSA
  • CHRISTOPH TREUD
  • FERNANDO JOSÉ CASTOR DE LIMA FILHO
  • RODRIGO BONIFACIO DE ALMEIDA
  • Data: 29/11/2019

  • Mostrar Resumo
  • O mecanismo de tratamento de exceções é um recurso presente na maioria das linguagens de programação modernas para o desenvolvimento de sistemas tolerantes à falhas. Apesar de ser um recurso já antigo da linguagem Java, os desenvolvedores ainda sentem dificuldades em usar o tratamento de exceções até para os problemas mais básicos. Apesar do tratamento de exceções de um sistema ser essencialmente um problema de design, poucos trabalhos se propõem a investigar o tratamento de exceções Java do ponto de vista dos desenvolvedores. Nesta tese nós exploramos as decisões tomadas e soluções adotadas por desenvolvedores Java para o tratamento de exceções em seus projetos. Ao todo realizamos 6 estudos, que consultaram um total de 423 desenvolvedores, entre entrevistas e surveys, e analisou o código-fonte de 240 projetos Java hospedados no GitHub. Nossos resultados mostram que as decisões relacionadas ao tratamento de exceções Java não costumam ser documentadas, e por vezes não são sequer discutidas verbalmente entre a equipe de desenvolvedores; que os desenvolvedores acreditam que seus código-fonte seguem as soluções adotadas; que os desenvolvedores aprendem sobre as soluções para tratamento de exceções através de reuniões informais e inspeção de código; que as soluções adotadas no projeto são verificadas no código-fonte através de revisão de código. Analisamos código-fonte Java de 240 projetos para verificar o cumprimento de 7 das 31 soluções para o tratamento de exceções Java que identificamos, e constatamos que muitas vezes o código não cumpre o pretendido. Nossa pesquisa revela uma fragilidade na implementação e verificação do tratamento de exceções Java que ajudará pesquisadores e comunidade na elaboração de ferramentas e outras soluções que auxiliem desenvolvedores a aplicarem o tratamento de exceções com eficácia.




  • Mostrar Abstract

  • The exception handling mechanism is a feature present in most modern programming languages for the development of fault tolerant systems. Despite being an older feature of the Java language, developers still struggle to use exception handling for even the most basic problems. Although the exception handling of a system is essentially a design problem, few works are intended to investigate Java exception handling from the developers' point of view. In this thesis we explore the decisions made and solutions adopted by Java developers for exception handling in their projects. In total we conducted 6 studies, which consulted a total of 423 developers, including interviews and surveys, and analyzed the source code of 240 Java projects hosted on GitHub. Our results show that decisions regarding Java exception handling are not usually documented, and sometimes not even discussed verbally among the developement team; that developers believe their code follows the solutions adopted; that developers learn about exception handling solutions through informal meetings and code inspection; that the solutions adopted in the project are verified in the source code through code review. We analyzed Java source code from 240 projects to verify compliance of 7 of the 31 Java exception handling solutions we identified, and found that the code often fails to deliver what was planned. Our research reveals a weakness in the design, implementation, and verification of Java exception handling that will help researchers and the community to design tools and other solutions that help developers to apply exception handling effectively.

9
  • ALLISSON DANTAS DE OLIVEIRA
  • MalariaApp: Um Sistema de Baixo Custo para Diagnóstico de Malária em Lâminas de Esfregaço Sanguı́neo usando Dispositivos Móveis

  • Orientador : BRUNO MOTTA DE CARVALHO
  • MEMBROS DA BANCA :
  • ANNE MAGALY DE PAULA CANUTO
  • BRUNO MOTTA DE CARVALHO
  • VALTER FERREIRA DE ANDRADE NETO
  • JONES OLIVEIRA DE ALBUQUERQUE
  • DANIEL LÓPEZ CODINA
  • Data: 29/11/2019

  • Mostrar Resumo
  • Nos dias atuais, uma variedade de dispositivos móveis está disponı́vel e acessı́vel à população em geral, tornando-se um item indispensável para a comunicação e o uso de diversos serviços. Nesta mesma direção, esses dispositivos tornaram-se bastante úteis em diversas áreas de atuação, incluindo a área médica. Com a integração desses dispositivos e aplicativos, é possı́vel realizar um trabalho preventivo, ajudando a combater surtos e até mesmo evitar epidemias. De acordo com a Organização Mundial da Saúde (2017), a malária é uma das doenças infecciosas que mais causam letalidade no mundo, principalmente na região da África Subsaariana, enquanto que no Brasil é mais frequente a ocorrência de casos na região amazônica. Para a realização de diagnóstico de malária é imprescindı́vel haver técnicos treinados e com experiência para identificar as espécies e fases da doença, parte crucial para definir as dosagens ideais da administração de medicação aos pacientes. Neste trabalho é proposto um sistema de diagnóstico de malária à baixo custo utilizando dispositivos móveis, onde são aplicadas algumas técnicas segmentação, processamento de imagens digitais e redes neurais convolucionais para realizar a contagem de células, estimação de parasitemia e classificação de parasitos de Plasmodium nas espécies P.falciparum e P.vivax na fase trofozoı́ta. Um protótipo com peças 3D e automação eletrônica foi proposto para realizar a varredura e captura de imagens nas lâminas de sangue para integrar ao sistema mobile e realizar o diagnóstico in loco, sem
    a necessidade de mudança de equipamentos microscópicos, assim sendo, compartindo da premissa de baixo custo. Foi obtido 93% de acurácia em um modelo de redes neurais convolucionais. Diante disso, é possı́vel romper barreiras de acessibilidade em paı́ses com poucos recursos na utilização de ferramentas de diagnóstico/triagem de doenças.


  • Mostrar Abstract
  • Nowadays, a variety of mobile devices are available and accessible to the general population, making it an indispensable item for communication and use of various services. In this same direction, these devices have become quite useful in several areas of expertise, including the medical field. With the integration of these devices and applications, it is possible to perform preventive work, helping to combat outbreaks and even prevent epidemics. According to the World Health Organization (2017), malaria is one of the most lethal infectious diseases in the world, mainly in the region of sub-Saharan Africa, while in Brazil it is more frequent the occurrence of cases in the Amazon region. For the diagnosis of malaria it is essential to have trained and experienced technicians to identify the species and phases of the disease, a crucial part to define the ideal dosages of administering medication to patients. In this work, we propose a low-cost malaria diagnosis system using mobile devices, where some segmentation, digital image processing, and convolutional neural networks techniques are applied to perform cell counting, parasitemia estimation, and Plasmodium parasite classification in the species P.falciparum and P.vivax in the trophozoite step. A prototype with 3D parts and electronic automation was proposed to perform the scanning and imaging of blood slides to integrate with the mobile system and perform the on-site diagnosis, without the need for changing microscopic equipment, thus, based on the premise of low cost. A 93% accuracy was obtained in a convolutional neural network train model. In view of this, it is possible to break barriers of accessibility in countries with few resources in the use of diagnostic tools and screening of diseases.

10
  • JOSÉ GOMES LOPES FILHO
  • O Problema do Caixeiro Viajante com Coleta Opcional de Bônus, Tempo de Coleta e Passageiros

  • Orientador : MARCO CESAR GOLDBARG
  • MEMBROS DA BANCA :
  • MARCO CESAR GOLDBARG
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MATHEUS DA SILVA MENEZES
  • PAULO HENRIQUE ASCONAVIETA DA SILVA
  • THATIANA CUNHA NAVARRO DE SOUZA
  • Data: 13/12/2019

  • Mostrar Resumo
  • O trabalho examina uma variante do Caixeiro Viajante denominada O Caixeiro Viajante com Coleta de Bônus Optativos, Passageiros, Tempo de Coleta e Janela de Tempo (PCVP-DJT). Trata-se de uma variante que envolve roteamento de veículos, ridesharing de passageiros e execução de tarefas de um courier. Desenvolve-se um modelo de programação matemática para o problema. Duas formulações matemáticas são apresentadas para o problema e validadas através de um experimento computacional empregando um solver matemático. Quatro algoritmos heurísticos são propostos, sendo três algoritmos meta-heurísticos híbridos. Resultados computacionais são apresentados. São propostos trabalhos futuros.


  • Mostrar Abstract
  • The paper examines a variant of the Traveling Salasman Problema called The Traveling Salesamn with Collect of Opatative Bonuses, Passengers, Collection Time, and Time Window (PCVP-DJT).This is a variant that involves vehicle routing, passenger ridesharing, and the execution of a courier's tasks. Two mathematical formulations are presented for the problem and validated through a computational experiment employing a mathematical solver. Four heuristic algorithms are proposed, being three hybrid metaheuristic algorithms. Computational results are presented. Future work is proposed. 

11
  • ANNAXSUEL ARAUJO DE LIMA
  • Conjuntos Fuzzy Multidimensionais

  • Orientador : BENJAMIN RENE CALLEJAS BEDREGAL
  • MEMBROS DA BANCA :
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • EDUARDO SILVA PALMEIRA
  • HELIDA SALLES SANTOS
  • REGIVAN HUGO NUNES SANTIAGO
  • RENATA HAX SANDER REISER
  • Data: 20/12/2019

  • Mostrar Resumo
  • Desde o surgimento da teoria dos conjuntos fuzzy muitas propostas de extensões em diferentes contextos foram dadas, uma delas é a de conjunto fuzzy n-dimensional em que seus elementos são túplas de tamanho n cujas componentes são valores em [0, 1], ordenadas de forma crescente, chamados de intervalos n-dimensionais. Geralmente, estes conjuntos são usados para desenvolver ferramentas que auxiliam na modelagem de situações envolvendo tomada de decisão onde dado um problema e uma alternativa, cada intervalo n-dimensional representa a opinião de n especialistas sobre o grau com que uma alternativa atende um determinado critério ou atributo para este problema. Contudo, esta abordagem não é capaz de lidar com situações em que um especialista, em particular, pode, por exemplo, abster-se de qualquer critério de tomada de decisão, e portanto, teríamos num mesmo problema coexistindo intervalos n-dimensionais com
    diferentes valores de n ou na qual o conjunto de especialistas mude para cada par alternativa/atributo. Dessa forma, necessitamos de uma nova extensão de conjunto fuzzy na qual seus elementos (intervalos) possam ter dimensões quaisquer. Neste trabalho, apresentamos o conceito de conjuntos fuzzy multidimensionais como uma generalização dos conjuntos fuzzy n-dimensionais em que os elementos podem ter dimensões distintas. Também apresentamos uma forma de gerar comparações (ordenações) desses elementos de diferentes dimensões, discutimos condições sob as quais esses conjuntos têm estrutura de reticulado e introduzimos os conceitos de ordens admissíveis, funções de agregação e negações multidimensionais sobre conjuntos fuzzy multidimensionais. Além disso, aprofundamos os estudos sobre somas ordinais de negações fuzzy.


  • Mostrar Abstract
  • Since arising fuzzy set theory many extensions proposals have been given, one of them is the n-dimensional fuzzy set in which its elements are tuples of size n whose components are values in [0, 1], ordered in increasing form, called n-dimensional intervals. Generally, these sets are used to develop tools that aid in modeling situations involving decision-making where given a problem and an alternative, each n-dimensional interval represents the opinion of n specialists on the degree to which an alternative meets a given criterion or attribute for this problem. However, this approach is not able to deal with situations in which a particular expert can, for example, refrain from any decision-making criteria, and therefore, we would have in the same problem coexisting n-dimensional intervals with different values of n or where the set of specialists changes for each pair alternative/attribute. Thus, we need a new fuzzy set extension in which its elements (intervals) can have any dimensions. In this work, we present the concept of multidimensional fuzzy sets as a generalization of the n-dimensional fuzzy sets in which the elements can have different dimensions. We also present a way to generate comparisons (ordering) of these elements of different dimensions, discuss conditions under which these sets have lattice structure and introduce the concepts of admissible orders, multidimensional aggregation functions and fuzzy negations on multidimensional fuzzy sets. In addition, we deepen studies on ordinal sums of fuzzy negations.

2018
Dissertações
1
  • THIAGO NASCIMENTO DA SILVA
  • A lógica S de Nelson e sua semântica algébrica

  • Orientador : UMBERTO RIVIECCIO
  • MEMBROS DA BANCA :
  • JOAO MARCOS DE ALMEIDA
  • UMBERTO RIVIECCIO
  • HUGO LUIZ MARIANO
  • Data: 25/01/2018

  • Mostrar Resumo
  • Além da mais conhecida lógica de Nelson (N3) e da lógica paraconsistente de Nelson

    (N4), David Nelson introduziu no artigo de 1959 "Negation and separation of concepts

    in constructive systems", com motivações de aritmética e construtividade, a lógica que

    ele chamou de "S". Naquele trabalho, a lógica é definida por meio de um cálculo (que

    carece crucialmente da regra de contração) tendo infinitos esquemas de regras, e nenhuma

    semântica é fornecida.

    Neste trabalho nós tomamos o fragmento proposicional de S, mostrando que ele é algebrizável

    (de fato, implicativo) no sentido de Blok & Pigozzi com respeito a uma classe de

    reticulados residuados involutivos. Assim, fornecemos a primeira semântica para S, bem

    como um cálculo estilo Hilbert finito equivalente à apresentação de Nelson. Fornecemos um algoritmo que permite construir S-algebras a partir de S-algebras ou reticulados implicativos e usando essa construção mostramos que as fórmulas que Nelson diz que S não pode provar, de fato não podem ser provadas.  Nós também

    comparamos S com outras lógicas da família de Nelson, a saber, N3 e N4.


  • Mostrar Abstract
  • Besides the better-known Nelson logic (N3) and paraconsistent Nelson logic (N4), David Nelson introduced, in the 1959 paper "Negation and separation of concepts in constructive systems”, with motivations of arithmetic and constructibility, a logic that he called “S”. In the present study, the logic is defined by means of a calculus (which crucially lacks the contraction rule) having infinitely many rule schemata, and no semantics is provided for it.

    We look at the propositional fragment of S, showing that it is algebraizable (in fact, implicative) in the sense of Blok & Pigozzi with respect to a class of involutive residuated lattices. We thus provide the first known (algebraic) semantics for S as well as a Hilbert-style calculus equivalent to Nelson’s presentation. We also compare S with the other logics in the Nelson family N3 and N4.

2
  • BRENNER HUMBERTO OJEDA RIOS
  • Hibridização de Meta-Heurísticas com Métodos Baseados em Programação Linear para o Problema do Caixeiro Alugador 

  • Orientador : ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MEMBROS DA BANCA :
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MARCO CESAR GOLDBARG
  • MATHEUS DA SILVA MENEZES
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • Data: 02/02/2018

  • Mostrar Resumo
  • O Problema do Caixeiro Viajante com Aluguel de Carros, ou simplesmente Problema do Caixeiro Alugador (PCA),  é uma generalização do clássico Problema do Caixeiro Viajante (PCV) onde seu tour de visitas pode ser decomposto em caminhos contíguos que podem ser percorridos com diferentes carros alugados. O objetivo é determinar o circuito hamiltoniano que resulte em um custo final mínimo, considerando a  penalização paga em cada troca de veículos no tour. A penalização é o custo de retornar o carro até a cidade onde foi alugado. O PCA está classificado como um problema NP-difícil. O presente trabalho estuda a variante mais usada na literatura do PCA que é: completo, total, irrestrito, sem repetição, livre e simétrico. O foco da pesquisa são os procedimentos híbridos que combinam meta-heurísticas e métodos baseados na Programação Linear.  São hibridizados: algoritmos científicos (ScA), algoritmos evolucionários (EA),  busca em vizinhança variável (VND),   busca local adaptativa (ALSP)  e uma nova variante da ALSP chamada busca local adaptativa iterativa (IALSP).  As seguintes técnicas são propostas para lidar com o PCA:  ScA+ALSP, EA+IALSP, ScA+IALSP e ScA+VND+IALSP. É proposto um modelo de programação inteira mista para o PCA o qual é usado no ALSP e no IALSP. Testes não paramétricos são usados para comparar os algoritmos em um conjunto de instâncias da literatura.


  • Mostrar Abstract
  • The Traveling Car Renter Salesman Problem, or simply Traveling Car Renter Problem (CaRS), is a generalization of the Traveling Salesman Problem (TSP) where the tour can be decomposed into contiguous paths that are traveled by different rented cars. The objective is to construct a minimal cost Hamiltonian circuit, considering the penalty paid for changing cars in the tour.  This penalty is the cost of returning a car to the city where it was rented. CaRS is classified as an NP-hard problem. This work studies the CaRS version classified as: complete, total, unrestricted, with no repetition, free and symmetric. This research  is focused on hybrid procedures that combine metaheuristics and methods based on Linear Programming (LP). The following methods were investigated: scientific algorithms (ScA), evolutionary algorithms (EA), variable neighborhood descent (VND), adaptive local search (ASLP) and a new variant of ALSP called iterated adaptive local search (IALSP). The following techniques are proposed to deal with CaRS:  ScA+ALSP, EA+IALSP, ScA+IALSP and ScA+VND+IALSP. A mixed integer programming model is proposed for CaRS which was used in the ALSP and IALSP. Non-parametric tests were used to compare the algorithms within a set of instances from the literature.

3
  • DIEGO DE AZEVEDO OLIVEIRA
  • BTestBox: uma ferramenta de teste para implementações B

  • Orientador : DAVID BORIS PAUL DEHARBE
  • MEMBROS DA BANCA :
  • MARCEL VINICIUS MEDEIROS OLIVEIRA
  • DAVID BORIS PAUL DEHARBE
  • Valério Gutemberg de Medeiros Júnior
  • Data: 05/02/2018

  • Mostrar Resumo
  • Softwares precisam ser seguros e corretos. Partindo desse pressuposto, novas tecnologias
    e técnicas são desenvolvidas para comprovar as competências de um programa. Essa necessidade
    de segurança se torna mais relevante ao tratar de softwares que atuam em sistemas críticos,
    como os sistemas ferroviário e aeroviário. A utilização de métodos formais na construção de
    software busca solucionar o problema. Ao utilizar o método formal B através da plataforma
    Atelier-B, e após provar os componentes de um projeto é necessária a tradução para a linguagem
    desejada. Essa tradução ocorre por meio de tradutores e compiladores B. Habitualmente,
    o processo de compilação em compiladores maduros é seguro, porém não estão completamente
    livres de falhas e eventualmente erros são encontrados. Ao expandir essa afirmação para tradutores
    B é necessário cautela, uma vez que esses não são tão comuns e utilizados quanto
    compiladores que circulam há mais tempo no mercado. Testes de software podem ser utilizados
    para realizar a análise da tradução. Através de critérios de cobertura é possível inferir o
    nível de qualidade do software e facilita a detecção de falhas. Realizar a checagem da cobertura
    e testes em software podem exigir bastante esforço e tempo, principalmente ao serem realizados
    manualmente. Para sanar essa demanda, a ferramenta BTestBox visa analisar, de maneira
    automática, a cobertura atingida por implementações B desenvolvidas através do Atelier-B.
    BTestBox também testa automaticamente as traduções feitas a partir de implementações B.
    Para isso, BTestBox utiliza os casos de teste gerados para a verificação de cobertura e compara
    os valores esperados de saída com os encontrados após a tradução. O processo feito por BTest-
    Box é todo automático e pode ser utilizado a partir do Atelier-B via instalação de plugin com
    uma interface simples.
    Essa proposta de dissertação apresenta a ferramenta BTestBox. A ferramenta é a implementação
    das ideias propostas no parágrafo anterior. BTestBox foi testado através de pequenas
    implementações B com todos os elementos possíveis da linguagem B. BTestBox apresenta
    funcionalidade e vantagens para programadores que utilizam o método formal B.


  • Mostrar Abstract
  • Software needs to be safe and correct. From that assumption, new technologies and techniques
    are developed to prove the competencies of a program. This safety necessity is more
    relevant when considering critical systems, such as railways and avionics systems. The use
    of formal methods in the construction of software tries to solve this problem. When using B
    in Atelier-B, after proving the components of a project is necessary to translate to the desired
    language. This translation occurs using B translators and compilers. Usually, the process of
    compilation is safe when done by mature compilers, although they are not free of errors and
    eventually bugs are found. Expanding this affirmation to B translators demands caution, since
    they are not used such as compilers that have more market time. Software testing may solve and
    be used to perform the analyses of the translated code. Through coverage criteria is possible
    to infer the level of quality of a software and detect bugs. To achieve the coverage check and
    test the software is hard and time-consuming, mainly if done manually. To adress this demand,
    the BTestBox tool aims to analyze, automatically, the coverage reached for B implementations
    built through Atelier-B. BTestBox also automatically tests the translation from B implementations.
    For this, BTestBox uses the same test case generated to verify the coverage and compare
    the output expected values with the values found in the translation. This process made by
    BTestBox is fully automatic and may be used from Atelier-B interface through a plugin with
    easy interface.
    This thesis proposal presents the tool BTestBox. The tool is the implementation of the
    ideas proposed in the previous paragraph. BTestBox was tested with small B implementations
    with all possible elements from B language. BTestBox presents various functionalities and
    advantages to developers that use the B-Method.

4
  • RENAN DE OLIVEIRA SILVA
  • Uma Proposta de Processo para Implantação de Dados Abertos em Instituições Públicas Brasileiras

  • Orientador : GIBEON SOARES DE AQUINO JUNIOR
  • MEMBROS DA BANCA :
  • FERNANDO MARQUES FIGUEIRA FILHO
  • GIBEON SOARES DE AQUINO JUNIOR
  • VANILSON ANDRÉ DE ARRUDA BURÉGIO
  • Data: 20/02/2018

  • Mostrar Resumo
  • A iniciativa de Dados Abertos vem ganhando força nos últimos tempos, com adesão crescente de instituições públicas e governos. Porém, ainda existem vários desafios que precisam ser vencidos quando se decide disponibilizar dados de acordo com esse modelo. Isso afeta negativamente a qualidade e efetividade das publicações. Assim sendo, o objetivo deste trabalho é estabelecer um processo que auxilie instituições públicas brasileiras a disponibilizarem seus dados, sistematizando as fases e tarefas necessárias. Para isso, foi realizado um mapeamento sistemático da literatura, a fim de descobrir estratégias, melhores práticas, desafios e dificuldades que existem na área.


  • Mostrar Abstract
  • Open Data initiative has been gaining strength in recent times, with increasing participation of public institutions. However, there are still many challenges that need to be overcome when deciding to open data. This negatively affects the quality and effectiveness of publications. Therefore, the objective of this work is to establish a process that help brazilian public institutions to open their data, systematizing the necessary tasks and phases. For this, we carried out a systematic mapping of the literature, in order to discover strategies, best practices, challenges and difficulties that exist in the field.

5
  • FRED DE CASTRO SANTOS
  • Um mecanismo para avaliar consultas livres de contexto em bases de dados em grafos inspirado em analisadores LR(1)

  • Orientador : UMBERTO SOUZA DA COSTA
  • MEMBROS DA BANCA :
  • MARCEL VINICIUS MEDEIROS OLIVEIRA
  • MARIZA ANDRADE DA SILVA BIGONHA
  • MARTIN ALEJANDRO MUSICANTE
  • SERGIO QUEIROZ DE MEDEIROS
  • UMBERTO SOUZA DA COSTA
  • Data: 23/02/2018

  • Mostrar Resumo
  • A World Wide Web é uma coleção de informações sempre crescente. Esta informação é distribuída entre documentos diferentes, disponibilizados através do Hypertext Transfer Protocol (HTTP). Mesmo que essa informação seja acessível aos usuários na forma de artigos de notícias, transmissões de áudio, imagens e vídeos, os agentes de software geral- mente não podem classificá-la. A falta de informações semânticas sobre esses documentos em um formato legível por máquina muitas vezes faz com que a análise seja imprecisa. Um número significativo de entidades adotaram Linked Data como uma forma de adicionar informações semânticas aos seus dados, e não apenas publicá-lo na Web. O resultado é uma coleção global de dados, chamada Web of Data, que forma um grafo global, composto por declarações no formato Resource Description Framework (RDF) de diversas fontes, cobrindo todos os tipos de tópicos. Para poder encontrar informações específicas nesses dados, as consultas são realizadas começando em um sujeito e analisando seus predicados nas instruções RDF. Dado que um rastro é uma lista de predicados em um caminho de informação, pode-se dizer que existe uma conexão entre um sujeito e um objeto se houver um rastro entre eles nas instruções RDF.

    O uso de HTTP como mecanismo padrão de acesso a dados e RDF como modelo de dados padrão simplifica o acesso a dados, o que nos motiva a pesquisar alternativas na forma como esses dados são buscados. Uma vez que a maioria das linguagens de consulta de banco de dados de grafo estão na classe de Linguagens Regulares, nós propomos seguir um caminho diferente e tentar usar uma classe de gramática menos restritiva, chamada Gramática Livre de Contexto Determinística, para aumentar a expressividade das con- sultas no banco de dados em grafo. Mais especificamente, aplicando o método de análise LR(1) para encontrar caminhos em um banco de dados de grafo RDF. Neste documento, apresentamos alguns dos conceitos necessários para uma melhor compreensão dos proble- mas e da forma de resolvê-los. Analisamos alguns trabalhos relacionados à nossa pesquisa e sugerimos uma nova solução, usando conceitos de análise LR(1) para consultar o banco de dados. Por último, analizamos a complexidade do nosso algoritmo e executamos alguns experimentos, comparando nossa solução com as outras propostas, mostrando que a nossa pode ter melhor performance em alguns cenários.


  • Mostrar Abstract
  • The World Wide Web is an always increasing collection of information. This information is spread among different documents, which are made available by using the Hypertext Transfer Protocol (HTTP). Even though this information is accessible to users in the form of news articles, audio broadcasts, images and videos, software agents often cannot classify it. The lack of semantic information about these documents in a machine readable format often causes the analysis to be inaccurate. A significant number of entities have adopted Linked Data as a way to add semantic information to their data, not just publishing it on the Web. The result is a global data collection, called the Web of Data, which forms a global graph, consisting of Resource Description Framework (RDF) statements from numerous sources, covering all sorts of topics. To be able to find specific information in this graph, queries are performed by starting at a subject and analyzing its predicates in the RDF statements. Given that a trace is a list of predicates in an information path, one can tell there is a connection between one subject and one object if there is a trace between them in the RDF statements.

    The use of HTTP as a standardized data access mechanism and RDF as a standard data model simplifies the data access, but accessing heterogeneous data on distinct loca- tions can have an increased time complexity and current query languages have a reduced query expressiveness, which motivates us to research alternatives in how this data is queried. This reduced expressiveness happens because most query languages reside in the Regular Languages class. In this work, we introduce some of the concepts needed for better understanding the given problems and how to solve them. We analyze some works related to our research and propose to use Deterministic Context-Free Grammars instead of Regular languages to increase the expressiveness of the graph database queries. More specifically, applying the LR(1) parsing method to find paths in an RDF graph database. Lastly, we analyze our algorithm’s complexity and make some experiments, comparing our solution to other proposals, and show that ours can have better performance in given scenarios.

6
  • CIRO MORAIS MEDEIROS
  • Avaliação Top-Down de Consultas de Caminhos Livres-de-Contexto em Grafos

  • Orientador : MARTIN ALEJANDRO MUSICANTE
  • MEMBROS DA BANCA :
  • MARTIN ALEJANDRO MUSICANTE
  • MARCEL VINICIUS MEDEIROS OLIVEIRA
  • UMBERTO SOUZA DA COSTA
  • SERGIO QUEIROZ DE MEDEIROS
  • MARIZA ANDRADE DA SILVA BIGONHA
  • Data: 23/02/2018

  • Mostrar Resumo
  • A internet possibilitou a criação de um imenso espaço de dados global, que pode ser acessado na forma de páginas web. Entretanto, páginas web são ideais para apresentar conteúdo para seres humanos, mas não para serem interpretadas por máquinas. Além disso, se torna difícil relacionar as informações armazenadas nos bancos de dados por trás dessas páginas.
    Daí surgiu o Linked Data, um conjunto de boas práticas para relacionamento e publicação de dados.

    O formato padrão recomendado pelo Linked Data para armazenamento e publicação de dados relacionados é o RDF. Este formato utiliza triplas na forma (sujeito, predicado, objeto) para estabelecer relacionamentos entre os dados. Um banco de dados de triplas pode ser facilmente visualizado como um grafo, de maneira que as consultas são feitas através da definição de caminhos no grafo. SPARQL, a linguagem padrão para consultas em grafos RDF, possibilita a definição de caminhos utilizando expressões regulares. Entretanto, expressões regulares têm expressividade reduzida, insuficiente para algumas consultas desejáveis. Para contornar este problema, alguns trabalhos propuseram a utilização de gramáticas livres-de-contexto para definir os caminhos.

    Apresentamos um algoritmo para avaliação de consultas de caminhos livres-de-contexto em grafos inspirado em técnicas de parsing top-down. Dado um grafo e uma consulta definida com base em uma gramática livre-de-contexto, nosso algoritmo identifica pares de vértices ligados por caminhos que formam palavras pertencentes à linguagem gerada pela gramática. Mostramos que nosso algoritmo é correto e demonstramos outras propriedades importantes.
    O algoritmo apresenta complexidade cúbica de tempo de execução no pior caso em termos do número de vértices no grafo. Implementamos o algoritmo proposto e avaliamos seu desempenho com bancos de dados RDF e com grafos sintéticos para confirmar sua eficiência.


  • Mostrar Abstract
  • The internet has enabled the creation of an immense global data space, that can be accessed in the form of web pages.
    However, web pages are ideal for presenting content to human beings, but not to be interpreted by machines.
    In addition, it becomes difficult to relate the information stored in the databases behind these pages.
    From this came the Linked Data, a set of good practices for relating and publishing data data.

    The standard format recommended by Linked Data for storing and publishing related data is RDF.
    This format uses triples in the form (subject, predicate, object) to stabilish relationships between the data.
    A triplestore can be easily visualized as a graph, so queries are made by defining paths in the graph.
    SPARQL, the standard query language for RDF graphs, supports the definition of paths using regular expressions.
    However, regular expressions have reduced expressiveness, insufficient for some desirable queries.
    In order to overcome this problem, some studies have proposed the use of context-free grammars to define the paths.

    We present an algorithm for evaluating context-free path queries in graphs inspired by top-down parsing techniques.
    Given a graph and a query defined over a context-free grammar, our algorithm identifies pairs of vertices linked by paths that form words of the language generated by the grammar.
    We show that our algorithm is correct and demonstrate other important properties of it.
    It presents cubic worst-case runtime complexity in terms of the number of vertices in the graph.
    We implemented the proposed algorithm and evaluated its performance with RDF databases and synthetic graphs to confirm its efficiency.

7
  • ANDERSON PABLO NASCIMENTO DA SILVA
  •  Uma Plataforma de Monitoramento Inteligente de Arritmia Cardíaca em Fluxo de Tempo Real

  • Orientador : GIBEON SOARES DE AQUINO JUNIOR
  • MEMBROS DA BANCA :
  • FERNANDO ANTONIO MOTA TRINTA
  • GIBEON SOARES DE AQUINO JUNIOR
  • JOAO CARLOS XAVIER JUNIOR
  • THAIS VASCONCELOS BATISTA
  • Data: 27/02/2018

  • Mostrar Resumo
  • Na última década tem-se visto um rápido crescimento na capacidade de sistemas de computa

    ção para coletar e transportar grandes quantidades de dados. Os cientistas e engenheiros

    que coletam esses dados muitas vezes se voltaram para o aprendizado de máquinas, a

    m de encontrar soluções para o problema de transformar esses dados em informação. Por

    exemplo, em vários dispositivos médicos, como a disponibilidade de sistemas de monitoriza

    ção da saúde, caixas de medicamentos com sensores incorporados neles que permitem

    coletar os dados brutos, armazenar e analisar, e através da análise pode-se obter insights

    e decisões sobre tais conjuntos de dados. Com o uso de aplicações de saúde baseados em

    aprendizado de máquina, existe uma oportunidade para melhorar a qualidade e a eciência

    dos cuidados médicos e, consequentemente, melhorar o bem-estar dos pacientes. Desta

    forma, este trabalho tem como objetivo geral a construção de uma plataforma de monitoramento

    inteligente de arritmia cardíaca que possibilite monitorar, identicar e alertar

    prossionais da saúde, pacientes e/ou familiares em tempo real sobre a saúde do paciente

    hospitalizado. A arquitetura e implementação da plataforma foram baseados na API do

    Weka e, como parte deste trabalho, foi implementada uma prova de conceito do uso da

    plataforma envolvendo módulos e aplicações desenvolvidos em Java.


  • Mostrar Abstract
  • In the last decade, there has been a rapid growth in the ability of computer systems to collect and carry large amounts of data. Scientists and engineers who collect this data have often turned to machine learning to nd solutions to the problem of turning that data into information. For example, in various medical devices, such as the availability of health monitoring systems, drug boxes with sensors embedded in them that allow you to collect raw data, store and analyze, and through the analysis you can get insights and decisions on such data sets. With the use of health applications based on machine learning, there is an opportunity to improve the quality and efficiency of medical care and, consequently, improve the wellness of patients. Thus, this work has as general objective the construction of an intelligent cardiac arrhythmia monitoring platform that allows monitoring, identifying and alerting health professionals, patients and relatives in real time about the hospitalized patient's health. The architecture and implementation of the platform were based on the Weka API and, as part of this work, a proof of concept of the use of the platform involving modules and applications developed in Java was implemented.

8
  • ALTAIR BRANDÃO MENDES
  • Mandala - Interoperabilidade baseada em Sistemas de Sistemas no âmbito de Cidades Inteligentes

  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • ELISA YUMI NAKAGAWA
  • FREDERICO ARAUJO DA SILVA LOPES
  • GIBEON SOARES DE AQUINO JUNIOR
  • THAIS VASCONCELOS BATISTA
  • Data: 28/02/2018

  • Mostrar Resumo
  • Atualmente, a dependência que as cidades modernas possuem em relação aos sistemas de informação é enorme. Uma parcela significativa desses sistemas, independente de serem gerenciados por entes públicos ou privados, foi desenvolvida utilizando tecnologias e conceitos que hoje já são considerados ultrapassados. Além disso, por não terem sido projetados com o intuito de se comunicarem com outros sistemas de forma interoperável, muitos sistemas existentes nas cidades são soluções isoladas e sem padronização. Por outro lado, o dinamismo exigido pelas empresas, pelo governo e, principalmente, pela população, demanda a união destes sistemas, trabalhando de forma integrada e interoperável. Interoperabilidade é fundamental para o alcance da eficiência e da eficácia do uso de recursos, extremamente necessárias em uma cidade inteligente. Mais que isso, a união entre estes sistemas pode trazer resultados antes inimagináveis, quando comparada aos resultados adquiridos por cada sistema isolado. Tais características remetem ao conceito de Sistema de Sistemas (ou SoS, do termo em inglês System of Systems), que consiste em um conjunto de sistemas complexos independentes e heterogêneos  que possuem seus próprios propósitos e colaboram, uns com os outros, para satisfazer objetivos comuns. Em SoS o resultado da interação entre diferentes sistemas é mais que a mera soma dos sistemas envolvidos, uma vez que em um SoS podem emergir novas funcionalidades que não são providas por qualquer um dos sistemas operando isoladamente. O uso da ideia de SoS no contexto de cidades inteligentes, visando promover interoperabilidade entre os sistemas tem sido um aspecto pouco explorado. Nesse contexto, este trabalho propõe o Mandala, um middleware baseado em SoS que possibilita a interoperabilidade entre sistemas de informação no âmbito de cidades inteligentes. O objetivo é tornar transparente a heterogeneidade dos sistemas envolvidos, fornecendo um ambiente de integração e interoperação de sistemas  de informação.


  • Mostrar Abstract
  • Currently, the cities depend considerable on information systems. A large part of these systems, regardless of the form of public or private management, was developed using technologies and concepts that are now considered outdated. Moreover, because they were not designed to communicate with other systems in an interoperable way, many of these systems in the cities are isolated and non-standardized solutions. In contrast, the dynamism demanded by companies, government and, mainly, population presupposes the union of these systems, working in an integrated and interoperable way. This interoperability is critical to achieving the efficiency and effectiveness of the use of expected resources in an smart city. Furthermore, the union between these systems can bring previously unimaginable results, when compared to the results acquired by each isolated system. These characteristics refer to the concept of System of Systems, which is a set of complex, independent, heterogeneous systems that have their own purposes and collaborate with others to achieve common goals. The interaction between different systems made possible by a SoS is more than the sum of the systems involved, since it allows a SoS to offer new functionalities that are not provided by any of the systems operating alone. Based on the above mentioned characteristics, this paper proposes Mandala, a SoS-centric middleware that enables interoperability between information systems in smart cities. The goal is to make the heterogeneity of the systems involved transparent, providing an environment of integration and interoperation of information systems.

9
  • FÁBIO PHILLIP ROCHA MARQUES
  • Dos Alfabetos ao Exame de Proficiência: Revisão Sistemática de Aplicativos para Ensino e Revisão da Língua Japonesa

  • Orientador : LEONARDO CUNHA DE MIRANDA
  • MEMBROS DA BANCA :
  • ANDRE MAURICIO CUNHA CAMPOS
  • LEONARDO CUNHA DE MIRANDA
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • ROMMEL WLADIMIR DE LIMA
  • Data: 28/05/2018

  • Mostrar Resumo
  • Japonês é uma língua com escrita, vocabulário, gramática e pronúncia diferentes das línguas ocidentais, pois apresenta três alfabetos (sendo dois silábicos e um logográfico), contém vocabulário, ortografia e fonologia construídos a partir de diferentes nações e possui, ainda, uma gramática com diversas regras e formas que, inclusive, podem diferir de acordo com o grau de formalidade entre o ouvinte e o falante. Estudar japonês exige, portanto, muita dedicação e prática. Para apoiar o estudo da língua, mais de 3.100 aplicativos são disponibilizados em lojas virtuais com a intenção de apoiar os estudantes no ensino e revisão do alfabeto, vocabulário, gramática e compreensão auditiva japonesa, além de preparar para o Japanese Language Proficiency Test (JLPT). No entanto, pouco foi investigado sobre o conteúdo, metodologia de ensino e revisão e características tecnológicas desses aplicativos. Esta pesquisa tem como objetivo revisar sistematicamente aplicativos focados no apoio ao estudo de japonês, baseado em um framework proposto para revisão quantitativa e qualitativa de software para o aprendizado de línguas. Uma análise individual de apps é realizada para cada componente da língua, iniciando pelos alfabetos, prosseguindo para o vocabulário, gramática e compreensão auditiva, de forma a estudar os aplicativos de cada componente da língua japonesa; e finalizando com a análise de aplicativos voltados à preparação para o JLPT, dado que existem aplicativos com conteúdo e apresentação ajustados especificamente para o exame. Descobertas são apresentadas e incluem um detalhamento das principais características de aplicativos do cenário atual, classificação das principais recomendações de aplicativos para as plataformas móveis Android e iOS, comparação entre os aplicativos das plataformas Android e iOS em relação ao apoio oferecido aos estudos e um estudo das características pouco presentes no cenário de aplicativos que são importantes no apoio ao estudo de japonês.


  • Mostrar Abstract
  • Japanese is a language with writing, vocabulary, grammar and pronunciation quite different from western languages, because it contains three alphabets (with two syllabic alphabets and the third one logographic), contains vocabulary, orthography and phonology built upon different nations and even has a grammar with many rules and forms, which may even differ according with the degree of formality between the listener and the speaker. Therefore, studying Japanese requires a lot of dedication and practice. To support the study of the language, more than 3100 applications are available in virtual stores with the intention of supporting students in learning and revising the Japanese alphabet, vocabulary, grammar and listening comprehension, as well as preparing for the Japanese Language Proficiency Test (JLPT). However, little has been investigated about the contents, teaching and reviewing methodology and technological features of these applications. This research aims to systematically review applications focused on supporting Japanese language study, based on a proposed framework for qualitative and quantitative review of language learning software. An individual evaluation is executed for each part of the language, starting with the alphabet, proceeding with vocabulary, grammar and listening comprehension, in order to study the applications of each component of the Japanese language; and finishing with the analysis of applications geared towards JLPT preparation, since there are applications with content and presentation adjusted specifically for the exam. Research findings are presented and include details of the main features of applications in the current scenario, a classification and comparison of the most recommended applications for the Android and iOS mobile platforms, comparison between Android and iOS platform apps in relation to the support provided to the studies and a study of features that do not usually appear in current applications but are very important for helping study Japanese nonetheless.

10
  • ISLAME FELIPE DA COSTA FERNANDES
  • Meta-heurísticas Híbridas Aplicadas ao Problema da Árvore Geradora Multiobjetivo

  • Orientador : ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MEMBROS DA BANCA :
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MARCO CESAR GOLDBARG
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • THATIANA CUNHA NAVARRO DE SOUZA
  • Data: 06/07/2018

  • Mostrar Resumo
  • O Problema da Árvore Geradora Multiobjetivo (AGMO) é uma extensão NP-Difícil da Árvore Geradora Mínima (AGM). Devido a sua habilidade em modelar inúmeros problemas reais onde objetivos conflitantes devem ser otimizados simultaneamente, a AGMO tem sido intensamente estudada na literatura e muitos algoritmos exatos e heurísticos lhe foram propostos. Além disso, nos últimos anos, pesquisas têm demonstrado considerável desempenho dos algoritmos que combinam estratégias de várias meta-heurísticas. Estes algoritmos são chamados híbridos e trabalhos anteriores os aplicaram com sucesso a vários problemas de otimização. Neste trabalho, cinco novos algoritmos híbridos são propostos para duas versões da AGMO: três para a versão bi-objetivo (AG-Bi) baseada em dominância de Pareto e dois para a versão com muitos objetivos baseada no operador de média ponderada ordenada (AG-OWA). Esta pesquisa hibridizou diversas abordagens meta-heurísticas com respeito a diferentes categorias de hibridização. Experimentos computacionais avaliaram as novas abordagens com base no tempo computacional e na qualidade das soluções encontradas. Os resultados foram comparados com o estado da arte. 


  • Mostrar Abstract
  • The Multi-objective Spanning Tree Problem (MSTP) is an NP-hard extension of the Minimum Spanning Tree (MST). Once the MTSP models several real-world problems in which conflicting objectives need to be optimized simultaneously, it has been extensively studied in the literature and several exact and heuristic algorithms were proposed for it. Besides, over the last years, researchs have showed the considerable performance of algorithms that combine various metaheuristic strategies. They are called hybrid algorithms and previous works successfully applied them to several optimization problems. In this work, five new hybrid algorithms are proposed for two versions of the MSTP: three for the bi-objective version (BiST) based on Pareto dominance and two for the many-objective version based on the ordered weighted average operator (OWA-ST). This research hybridized elements from various metaheuristics. Computational experiments investigated the potential of the new algorithms concerning computational time and solution quality. The results were compared to the state-of-the-art.

11
  • JÉSSICA LAÍSA DIAS DA SILVA
  • Game Design de Jogos Digitais de Pensamento Computacional inspirados no Instrumento de Avaliação Bebras Challenge

  • Orientador : EDUARDO HENRIQUE DA SILVA ARANHA
  • MEMBROS DA BANCA :
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • JACQUES DUÍLIO BRANCHER
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • Data: 25/07/2018

  • Mostrar Resumo
  • Diversas competências são exigidas neste século, entre elas, as competências relacionadas à computação. Conforme Blinkstein (2008) afirma que a lista de habilidades exigidas para este século é bem extensa. Contudo, ele enfatiza o pensamento computacional com sendo uma das mais significativas como também a menos compreendida. O Pensamento computacional (PC) pode ser definido como um processo de resolução de problemas que compreende conceitos, habilidades e práticas da Ciência da Computação. Dentre o esforço internacional para disseminar o Pensamento Computacional temos em destaque o Teste Bebras. O principal objetivo do Teste é motivar os alunos do ensino primário e secundário, como também o público em geral a interessarem-se pela computação e o PC. O ensino do Pensamento Computacional é importante se difundido, porém é observado que muito ainda se falta nos jogos digitais para trabalharem as habilidades propostas para o ensino e aprendizagem do PC. Assim o presente trabalho tem o objetivo de Investigar a qualidade do Game Design de jogos educativos criados a partir de questões do Teste Bebras Challenge.


  • Mostrar Abstract
  • Several skills are required in this century, among them, computer-related skills. As Blinkstein (2008) states, the list of skills required for this century is quite extensive. However, he emphasizes computational thinking as being one of the most significant as well as least understood. Computational Thinking (PC) can be defined as a problem-solving process that encompasses concepts, skills, and practices in Computer Science. Among the international effort to disseminate Computational Thinking we have highlighted the Bebras Test. The main goal of the Test is to motivate primary and secondary school students as well as the general public to become interested in computing and the PC. The teaching of Computational Thinking is important if it is widespread, but it is observed that much is still lacking in the digital games to work the proposed skills for the teaching and learning of the PC. Thus the present work aims to investigate the quality of Game Design of educational games created from questions of the Bebras Challenge Test.

12
  • WENDELL OLIVEIRA DE ARAÚJO
  • Geração Procedural de Conteúdo para Criação de Fases de Jogos Educativos

  • Orientador : EDUARDO HENRIQUE DA SILVA ARANHA
  • MEMBROS DA BANCA :
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • JACQUES DUÍLIO BRANCHER
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • Data: 25/07/2018

  • Mostrar Resumo
  • Jogos digitais educativos tem se mostrado uma grande área de pesquisa que vem aumentando com o decorrer dos anos em todo o cenário internacional. Esse fato tem se dado pelo potencial que os jogos têm de diversão, imersão e estímulo à aprendizagem de maneira natural e personalizada. Dessa forma, um dos grandes desafios encontrados nessa área é o da criação de jogos que atendam aos conteúdos propostos para serem ensinados ou praticados. Nesse sentido, a geração procedural de conteúdo tem se apresentado como uma área que pode auxiliar do desenvolvimento de jogos educativos. A geração procedural de conteúdo (PCG) trata da criação automática de conteúdos como texturas, sons, objetos e, no contexto deste trabalho a geração de fases. Assim, a PCG contribui para a criação de novas fases sem que haja a necessidade de intervenção humana. Com isso, a pesquisa busca fazer uso de uma técnica de PCG para a criação de fases de jogos educativos que requeiram do jogador atingir certos objetivos pedagógicos ao longo do jogo. Para isso, propomos uma abordagem de geração em três etapas: (i) geração da estrutura básica da fase (ex.: somente chãos e paredes); (ii) A geração de elementos relacionados aos objetivos pedagógicos da fase; (iii) completar o restante da fase com inimigos e demais elementos de cenário. Deste modo, ela pode ser utilizada para criar diferentes desafios e cenários para que um aluno possa praticar determinado conteúdo, visto que sempre que um desafio é concluído, um novo desafio pode ser gerado para o aluno. Dessa forma, esta abordagem será investigada utilizando a técnica de PCG baseada em gramática. Portanto, buscamos verificar se a técnica em conjunto com a abordagem proposta auxilia na geração dos conteúdos e as cria de maneira eficaz, avaliando sua qualidade e funcionalidades com alunos do ensino fundamental. 


  • Mostrar Abstract
  • Educational digital games has been an area of research that has increased with the years throughout the international scene. This fact has been due to the potential that the games have of fun, immersion and stimulation to the learning of natural and personalized way. Thus, one of the great challenges found in this area is the creation of games that meet the contents proposed to be taught or practiced. In this sense, the procedural content generation has emerged as an area that can assist the development of educational games. The procedural content generation (PCG) deals with the automatic creation of contents such as textures, sounds, objects and, in the context of this work, the level’s generation. Thus, PCG contributes to the creation of new levels without the need for human intervention. With this, the research seeks to make use of PCG technique to create levels of educational games that require the player to achieve certain pedagogical goals throughout the game. For this, we propose a generation approach in three stages: (i) generation of the basic structure of the level (ex: only floors and walls); (ii) The generation of elements related to the pedagogical objectives of the level; (iii) complete the remainder of the level with enemies and other scenario elements. In this way, it can be used to create different challenges and scenarios so that a student can practice certain content, since whenever a challenge is completed, a new challenge can be generated for the student. In this way, this approach will be investigated using the grammar-based PCG technique. Therefore, we seek to verify if the technique in conjunction with the proposed approach assists in the generation of contents and creates them effectively, evaluating their quality and functionalities with elementary students.


13
  • RAFAEL FERREIRA TOLEDO
  • Um Mecanimo de Recuperação Baseado em Reescrita para Composições de Serviços Web

  • Orientador : UMBERTO SOUZA DA COSTA
  • MEMBROS DA BANCA :
  • GENOVEVA VARGAS-SOLAR
  • MARTIN ALEJANDRO MUSICANTE
  • UMBERTO SOUZA DA COSTA
  • Data: 26/07/2018

  • Mostrar Resumo
  •  

    As composições de serviços da Web são expostas a uma ampla variedade de falhas. Os serviços localizados remotamente podem representar possíveis problemas devido aos meios de conectivi- dade necessários para a comunicação. Além disso, mudanças implementadas por seu respectivo provedor durante as atualizações do sistema também podem ocasionar erros. Esses problemas representam eventos inesperados que comprometem a corretude e disponibilidade de uma de- terminada composição de serviços. Esta dissertação apresenta uma abordagem para melhorar a robustez das composições de serviços Web, recuperando de falhas ocorridas em diferentes momentos de sua execução. Primeiramente, apresentamos uma taxonomia de falhas como uma visão geral de trabalhos anteriores sobre recuperação de falhas em composições de serviços. A classificação resultante é usada para propor nosso método de autocorreção para orquestrações de serviços da Web. O método proposto, baseado no processo de refinamento das composições, leva em consideração as preferências do usuário para gerar as melhores soluções possíveis para a recuperação. Para validar nossa abordagem, produzimos um protótipo de implementação ca- paz de simular e analisar diferentes cenários de falhas. Nesse sentido, nosso trabalho apresenta algoritmos para gerar composições e serviços Web sintéticos. Nesse cenário, tanto o tempo de recuperação quanto a degradação da preferência do usu'ario são investigados após a execução de recuperaçções locais, parciais e totais. Essas estratégias representam diferentes níveis de intervenção na composição.



  • Mostrar Abstract
  • Web service compositions are exposed to a wide variety of failures. The service components re- motely located can represent potential problems due to the means of connectivity necessary for communication or because of changes implemented by their respective provider during system updates. Those problems represent unexpected events that compromise the correctness and availability of a given service composition. This dissertation presents an approach to improve the robustness of Web service compositions by recovering from failures occurred at different moments of their execution. We first present a taxonomy of failures as an overview of previous research works on the topic of fault recovery of service compositions. The resulting classifica- tion is used to propose our self-healing method for Web service orchestrations. The proposed method, based on the refinement process of compositions, takes user preferences into account to generate the best possible recovering compositions. To validate our approach, we produced a prototype implementation capable of simulating and analyzing different scenarios of faults. For that matter, our work introduces algorithms for generating synthetic compositions and Web services. In this setting, both the recovery time and the user preference degradation are investigated under different strategies, namely local, partial or total recovery. These strategies represent different levels of intervention on the composition.
14
  • GABRIEL DE ALMEIDA ARAÚJO
  • Plataforma Interativa de Análise de Velocidade em Dados Sísmicos usando GPUs

  • Orientador : BRUNO MOTTA DE CARVALHO
  • MEMBROS DA BANCA :
  • BRUNO MOTTA DE CARVALHO
  • MONICA MAGALHAES PEREIRA
  • CARLOS CESAR NASCIMENTO DA SILVA
  • ARMANDO LOPES FARIAS
  • Data: 27/07/2018

  • Mostrar Resumo
  • Com o avanço da exploração de hidrocarbonetos, a indústria vem buscando continuamente meios de minimizar os riscos exploratórios, onde um desses meios é o aprimoramento das ferramentas utilizadas. Existem três etapas nessa exploração: a aquisição de dados sísmicos, o processamento sísmico e a interpretação sísmica. O presente trabalho se situa no processamento sísmico, mais especificamente em uma de suas etapas, a análise de velocidade sísmica, que tem como objetivo encontrar o campo de velocidade mais fidedigno da subsuperfície da terra através de algoritmos conhecidos de análise. Um dos objetivos desse trabalho é a criação de meios para facilitar essa análise de velocidade, através da implementação desses algoritmos de forma que eles funcionem integrados em uma única plataforma. Outro ponto que o avanço da exploração sísmica trouxe foi o aumento considerável do volume de dados sísmicos adquiridos e das tecnologias utilizadas, que elevaram consideravelmente a necessidade de computadores mais poderosos e também à busca de soluções de alto poder computacional. Com base nessa necessidade, será apresentada uma nova metodologia de análise de dados sísmicos usando GPUs e os resultados obtidos da sua utilização, mostrando sua viabilidade para acelerar algoritmos geofísicos, em especial algoritmos voltados para à análise de velocidade. Ao final serão discutidos os resultados e feita a comparação de desempenho dos algoritmos paralelos e sequenciais.


  • Mostrar Abstract
  • With the advancement of hydrocarbon exploration, the oil industry has been searching for ways to minimize exploratory risks, with one of these ways being the improvement of the used tools. There are three steps in this exploration: the seismic data acquisition, the seismic processing and seismic interpretation. This work is part of the seismic processing, more specifically of one of its stages, the seismic velocity analysis, which aims to find the seismic velocity field that offers reliable earth subsurface models through known algorithms of velocity analysis. One of the objectives of this work is the creation of tools to facilitate this velocity analysis by implementing these algorithms so that they work integrated in a single platform of analysis. Another point that this advance brought, was the considerable increase in the volume of seismic data acquired, which led to an increasing need of computer processing power. Given this need, we present a methodology for velocity analysis using GPUs and its results, showing the viability of using it to accelerate Geophysics algorithms, particularly algorithms for velocity analysis. Finally, case studies will be presented, showing the performance results of the algorithms in CPU and GPU versions.

15
  • FÁBIO ANDREWS ROCHA MARQUES
  • Desenvolvimento e Avaliação do Nihongo Kotoba Shiken: Um Exame Computadorizado de Conhecimento da Língua Japonesa

  • Orientador : LEONARDO CUNHA DE MIRANDA
  • MEMBROS DA BANCA :
  • ANDRE MAURICIO CUNHA CAMPOS
  • LEONARDO CUNHA DE MIRANDA
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • ROMMEL WLADIMIR DE LIMA
  • Data: 27/07/2018

  • Mostrar Resumo
  • O estudo de línguas estrangeiras envolve a constante elaboração, aplicação e correção de avaliações de conhecimento. Nesse contexto, o uso de testes computadorizados tem facilitado estas tarefas, porém existem algumas limitações. Através da realização de estudos nas áreas de avaliação de conhecimento em línguas estrangeiras e automatização desta atividade, a presente pesquisa objetiva desenvolver uma forma de automatizar a avaliação de conhecimento na língua japonesa que não necessita de interação em tempo integral com um professor profissional da língua e que não esteja limitada a um conteúdo fixo da língua, i.e. o conteúdo do teste deve ser modificável. Serão apresentadas as etapas de pesquisa sobre o estudo e avaliação de conhecimento da língua japonesa através da tecnologia, concepção da metodologia de avaliação utilizada no exame, fluxo de execução e características do Nihongo Kotoba Shiken, e avaliações com um profissional da língua e algumas turmas de japonês em um contexto real de ensino.


  • Mostrar Abstract
  • The study of foreign languages involves the constant elaboration, application and correction of exams. In this context, the use of computerized tests has facilitated these tasks, but there are some limitations. By conducting studies in the areas of foreign language knowledge assessment and automation of this activity, the present research aims to develop a method to automate knowledge assessment in the Japanese language that does not require full interaction with a professional teacher of the language and which is not limited to a fixed content of the language, i.e. the content of the test must be modifiable. This work will present the research stages about the study and evaluation of Japanese language knowledge through the technology, the design of the evaluation methodology used in the exam, the flow of execution and characteristics of the Nihongo Kotoba Shiken, and assessments with a professional of the language and some Japanese language learning classes.

16
  • GABRIELA OLIVEIRA DA TRINDADE
  • Visualização da Rastreabilidade em Projetos Ágeis através de Dados contidos em Ferramentas de Apoio à Gerência de Projetos


  • Orientador : MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • MEMBROS DA BANCA :
  • GILBERTO AMADO DE AZEVEDO CYSNEIROS FILHO
  • LYRENE FERNANDES DA SILVA
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • Data: 27/07/2018

  • Mostrar Resumo
  • A rastreabilidade de software, conhecida pelo relacionamento entre quaisquer artefatos da engenharia de software, traz grandes vantagens no processo de desenvolvimento. As informações que ela fornece ajudam em tomadas de decisão diante de uma alteração, melhor entendimento do artefato, reusabilidade, manutenção, previsão de custos e prazos, entre outros. Com ambientes cada vez mais adeptos às metodologias ágeis, com o cliente lado a lado dando feedbacks constantes, a adequação a essas mudanças solicitadas tem sido uma prática comum durante o desenvolvimento de sistemas. E, para que as mudanças sejam feitas de forma segura, informações de rastreabilidade ajudam em decisões, com o objetivo de que a alteração não traga inconsistências, introdução de erros e geração de falhas no sistema.

    Algumas ferramentas de gerenciamento de projetos suportam elementos de rastreabilidade. Contudo com diversos dados que podem ser fornecidas com tal prática, fica difícil interpretá-los, principalmente quando são apresentados apenas textualmente. Sabendo que a visualização de informação traz possibilidade de uma análise com grandes volumes de dados de forma rápida e com mais clareza, oferecendo uma tomada de decisão mais segura e, permitindo descobrir informações antes não vistas, é possível verificar na literatura técnicas de visualização de informação de rastreabilidade. No entanto, tais técnicas necessitam de informações além desses dados, precisam considerar os pilares da informação expostos na academia (problemática, o que, quando e quem visualizar) para se ter uma visualização adequada.

    Com este intuito, este trabalho realiza entrevistas na indústria para responder aos pilares da informação considerados na proposta de uma visualização. Em seguida, uma análise baseada em Teoria Fundamentada é feita nos dados levantados. Então, no contexto montado de rastreabilidade, perfis definidos, necessidades e problemas descritos e, artefatos gerados em ambientes ágeis, é estudada na bibliografia as visualizações de informação existentes.

    Como resultado é realizada uma discussão e sugestão de visualização apropriada para informações de rastreabilidade com base nas sugestões da literatura e dos dados levantados da entrevista. Posteriormente, com  Heurísticas criadas, é feita uma avaliação das ferramentas de gerenciamento de projeto que se integram a plataforma de hospedagem e versionamento de dados Github, para averiguar se fornecem a visualização de informação de rastreabilidade notada.



  • Mostrar Abstract
  • Software traceability, known for the relationship between any software engineering artifacts, brings great advantages to the development process. The information it provides helps in decision making in the face of a change, better understanding of the artifact, reusability, maintenance, forecasting of costs and deadlines, among others. With environments increasingly adept at agile methodologies, with client side-by-side giving constant feedbacks, a adequacy to these requested changes has been a common practice during system development. And, in order for changes to be made safely, traceability information helps in making decisions, with a goal in which the change does not bring inconsistencies, introduce errors, and generate system failures.
    Some project management tools support traceability elements. However, with several data that can be provided with such a practice, it is difficult to interpret them, especially when they are presented only textually. Knowing that the visualization of information brings the possibility of an analysis with large volumes of data in a fast and clear way, offering a safer decision making and, allowing to discover information previously unseen, it is possible to verify in the literature techniques of visualization of information of traceability. However, such techniques require information in addition to these data, need to consider the pillars of information exposed in the academy (problematic, what, when and who to view) to have an adequate visualization.
    With this purpose, this work performs interviews in the industry to respond to the pillars of information considered in the proposal of a visualization. Then, an analysis based on Grounded Theory is done on the data collected. Then, in the assembled context of traceability, defined profiles, needs and problems described, and artifacts generated in agile environments, the existing information visualizations are studied in the bibliography.
    As a result, a discussion and suggestion of appropriate visualization for traceability information are made based on the suggestions in the literature and data collected from the interview. Later, with Heuristics created, an evaluation of the project management tools that integrate the platform of hosting and versioning of data Github is made, to see if they provide the noticed visualization of traceability information.

17
  • FRANCISCO GENIVAN SILVA
  • Análise do Comportamento de Estudantes em Videoaulas

  • Orientador : EDUARDO HENRIQUE DA SILVA ARANHA
  • MEMBROS DA BANCA :
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • FERNANDO MARQUES FIGUEIRA FILHO
  • ISABEL DILLMANN NUNES
  • FABIANO AZEVEDO DORÇA
  • Data: 27/07/2018

  • Mostrar Resumo
  • A Educação a Distância e o uso de sistemas e-learning contribuem para a grande
    geração de dados educacionais. Diante disso, a utilização de banco de dados e o
    armazenamento de logs de execução possibilitam que os dados fiquem mais facilmente
    acessíveis e propícios para investigação dos processos educacionais. Metodologias de extração
    automática de informações úteis a partir de grandes volumes de dados, em especial a
    Mineração de Dados, têm contribuído expressivamente para melhorias no campo da
    educação. Entretanto, a maioria dos métodos tradicionais está centrada unicamente nos dados
    ou em como eles são estruturados, não havendo preocupação maior com o processo
    educacional como um todo. Além disso, pouca atenção tem sido dada a dados do
    comportamento dos estudantes durante o uso de recursos e mídias educacionais. As
    videoaulas têm sido utilizadas como parte significativa de diversos cursos ofertados,
    demonstrando que a cultura do vídeo está cada vez mais disseminada e que faz parte do
    cotidiano dos estudantes. Diante disso, compreendemos, pois, que analisar o comportamento
    dos estudantes durante a execução dos vídeos pode contribuir para uma avaliação mais
    precisa da qualidade dos assuntos abordados e da forma como foram trabalhados. Deste
    modo, este trabalho de mestrado se constituiu da realização de estudos conduzidos de modo a
    investigar o modo como estudantes se comportam durante o uso das videoaulas para propor
    uma abordagem de avaliação deste recurso. A avaliação das videoaulas se dá por meio de um
    processo que envolve extração de informações de arquivos de log e modelagem de ações
    através da mineração de processos. Os resultados iniciais demonstram que o número de
    visualizações, o tempo gasto e o tempo de abandono do vídeo são variáveis que possuem
    grande capacidade de oferecer informações úteis sobre a aprendizagem dos alunos. Isto
    demonstra que avaliar o recurso educacional através da análise de suas ações pode contribuir
    substancialmente na área educacional, beneficiando o tratamento de questões como a
    identificação de gargalos no processo de aprendizagem e a antecipação de problemas,
    principalmente na educação a distância. Os resultados obtidos durante os primeiros estudos
    com o uso da Mineração de Processos em dados experimentais proporcionaram maior clareza
    acerca do comportamento dos alunos durante as videoaulas, dando o direcionamento
    necessário para as ações a serem tomadas por professores ou produtores de conteúdo. Em
    vista disso, o trabalho traz contribuições para a melhoria de aspectos chave das videoaulas a
    partir de uma abordagem multidisciplinar, ajudando diretamente educadores e gestores a
    promoverem uma formação educacional mais completa baseada em recursos com melhor
    qualidade.


  • Mostrar Abstract
  • Distance Education and the use of e-learning systems contribute to the great
    generation of educational data. Therefore, the use of databases and the storage of execution
    logs make the data more easily accessible and suitable for investigation of educational
    processes. Methodologies for automatic extraction of useful information from large volumes
    of data, especially data mining, have significantly contributed to improvements in the field of
    education. However, most traditional methods are focused solely on the data or how they are
    structured, with no major concern with the educational process as a whole. In addition, little
    attention has been paid to data on student behavior during resource use and educational
    media. Video lessons have been used as a significant part of several courses offered,
    demonstrating that the culture of video is increasingly disseminated and is part of students'
    daily lives. Therefore, we understand that analyzing the behavior of students during the
    execution of the videos can contribute to a more accurate evaluation of the quality of the
    subjects addressed and the way they were worked. Thus, this master's work consisted of
    carrying out studies conducted in order to investigate the way students behave during the use
    of video lessons to propose an approach to evaluate this resource. The evaluation of video
    lessons occurs through a process that involves extracting information from log files and
    modeling actions through process mining. The initial results demonstrate that the number of
    views, the time spent and the time of drop out of the video are variables that have great
    capacity to offer useful information about the students' learning. This demonstrates that
    evaluating the educational resource through the analysis of its actions can contribute
    substantially in the educational area, benefiting the treatment of issues such as the
    identification of bottlenecks in the learning process and the anticipation of problems,
    especially in distance education. The results obtained during the first studies using Process
    Mining in experimental data provided greater clarity about students' behavior during video
    lessons, giving the necessary direction for the actions to be taken by teachers or content
    producers. In view of this, the work brings contributions to the improvement of key aspects of
    videotapes from a multidisciplinary approach, directly helping educators and managers to
    promote a more complete educational formation based on resources with better quality.

18
  • DANNYLO JOHNATHAN BERNARDINO EGÍDIO
  • Uma proposta de framework para facilitar o desenvolvimento de aplicações baseadas em IoT

  • Orientador : GIBEON SOARES DE AQUINO JUNIOR
  • MEMBROS DA BANCA :
  • GIBEON SOARES DE AQUINO JUNIOR
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • DIEGO RODRIGO CABRAL SILVA
  • KIEV SANTOS DA GAMA
  • Data: 30/07/2018

  • Mostrar Resumo
  • Os últimos anos tem sido marcados por um crescente avanço na computação embarcada,

    tecnologias de sensoriamento e dispositivos conectados. Tal avanço impactou de maneira

    expressiva em paradigmas inovadores, tais como o de Internet das Coisas (IoT) que acredita

    que objetos inteligentes capazes de conectarem-se na rede poderão cooperar entre si

    para alcançar um objetivo comum. Tal crescimento alavancou iniciativas de fornecedores

    em produzir protocolos e padrões de comunicação que viabilizassem essa cooperação, no

    entanto, a diversidade considerável de dispositivos, e consequentemente de protocolos que

    surgiram, acabaram por dicultar esse processo. Inúmeros desaos foram surgindo, dentre

    eles a heterogeneidade e a interoperabilidade. Estes desaos tornaram o processo de

    desenvolvimento das aplicações IoT uma tarefa complexa e custosa, pois as capacidades

    destes protocolos e padrões voltadas à descoberta dos dispositivos na rede, comunicação

    entre eles, entre outras, se tornaram bastante especícas para cada dispositivo, obrigando

    o desenvolvedor a criar estratégias de integração complexas para lidar com essa limitação.

    Desta forma, este trabalho propõe um framework que buscará simplicar o processo de

    desenvolvimento de aplicações IoT através da virtualização de dispositivos, de maneira

    que aspectos heterogêneos ligados aos dispositivos serão abstraídos por esta virtualização,

    e operações comuns dos protocolos tais como descoberta de dispositivos e comunicação

    com estes serão abstraídos através de uma interface comum entre eles, integrando-os e

    diminuindo os impactos das características heterogêneas.


  • Mostrar Abstract
  • Recent years have been marked by a growing advance in embedded computing, sensoring

    technologies and connected devices. Such an advance has had a signicant and expressive

    impact on innovative paradigms such as the Internet of Things (IoT), which believes that

    intelligent objects capable of connecting in the network can cooperate among each other

    to achieve a common goal. Such growth has leveraged supplier initiatives to produce

    protocols and communication standards that would enable such cooperation, however,

    the considerable diversity of devices and consequently protocols that have emerged have

    made this process dicult, creating numerous challenges, including heterogeneity and

    interoperability. These challenges have made the IoT application development process a

    complex and costly task, since the capabilities of these protocols and standards aimed at

    discovering the devices on the network, communication among them, have become quite

    specic for each device, forcing the developer to create complex integration strategies to

    deal with this limitation. In this way, this work proposes a textit framework that will seek

    to simplify the process of development of IoT applications through device virtualization, so

    that heterogeneous aspects connected to devices will be abstracted by this virtualization,

    and common operations of protocols such as discovery of devices and communication with

    them will be abstracted through a common interface between them, integrating them and

    reducing the impacts of the heterogeneous characteristics.

19
  • ERITON DE BARROS FARIAS
  • CATÁLOGO DE RECOMENDAÇÕES PARA AUXILIAR ADOÇÃO OU TRANSFORMAÇÃO ÁGIL

  • Orientador : MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • MEMBROS DA BANCA :
  • FERNANDO MARQUES FIGUEIRA FILHO
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • MARILIA ARANHA FREIRE
  • Data: 30/07/2018

  • Mostrar Resumo
  • Na academia é cada vez maior a quantidade de estudos sobre métodos ágeis. O desenvolvimento ágil de software exerce um impacto significativamente positivo no desempenho das equipes de desenvolvimento, na qualidade do software e na satisfação do usuário. Assim, dentre outros temas, a Adoção e Transformação Ágil são dois dos temas mais relevantes nos principais eventos sobre o ágil. Muitas equipes que trabalham com desenvolvimento ágil relatam que ainda falta um manual ou documento, onde se possa facilmente encontrar soluções para auxiliar equipes ágeis a realizarem processos de Transformação ou Adoção Ágil. Portanto, este trabalho tem o objetivo de analisar e categorizar informações que possam auxiliar equipes nesses processos. O resultado dessa análise foi organizado em um catálogo denominado de Catálogo de Recomendações para Auxiliar Adoção ou Transformação Ágil.


  • Mostrar Abstract
  • The number of studies on agile methods has increased in the academy. Agile software development has a significant positive impact on the performance of the development teams, software quality and users' satisfaction. Thus, among other topics, Agile Adoption and Transformation are two of the most relevant themes in the main events about agile. Many teams that work with agile development report that they miss a tutorial or document, in which it is possible to find solutions to help agile teams carry out processes of Agile Transformation or Adoption easily. Therefore, this work has the objective of analyzing and categorizing information that can assist teams in these processes. The result of this analysis was organized in a catalog called Recommendations Catalog to Assist Agile Adoption or Transformation.

20
  • VINÍCIUS ARAÚJO PETCH
  • Problema do Passeio Lucrativo com Passageiros e Restrições de Tempo – PPL-RT

  • Orientador : MARCO CESAR GOLDBARG
  • MEMBROS DA BANCA :
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MARCO CESAR GOLDBARG
  • MATHEUS DA SILVA MENEZES
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • Data: 06/08/2018

  • Mostrar Resumo
  • Este trabalho busca modelar e examinar soluções para o Problema do Passeio Lucrativo com Passageiros e Restrições de Tempo. O trabalho propõe um modelo matemático para o problema, algoritmo exato de solução e meta-heurísticas para a aproximação de solução. Para operacionalizar o experimento computacional necessário à presente pesquisa e por se tratar de um modelo não descrito na literatura, foram também criadas instâncias de teste. O trabalho realiza um experimento computacional para avaliar o desempenho da modelagem matemática e delinear a capacidade de aproximação de algoritmos meta-heurísticos para o problema. Por fim, descreve-se o cronograma para a defesa de mestrado e como o problema poderá ser desenvolvido em trabalhos futuros.


  • Mostrar Abstract
  • This paper seeks to model and examine solutions to the Profitable Tour Problem with Passengers and Time Constraints (PTP-TR). The work proposes a mathematical model for the problem, exact solution algorithm and metaheuristics for the solution approximation. In order to operationalize the computational experiment necessary to the present research and because it is a model not described in the literature, test instances were also created. The work performs a computational experiment to evaluate the performance of mathematical modeling and delineate the ability to approximate metaheuristic algorithms for the problem. Finally, it describes the schedule for the masters defense and how the problem can be developed in future works.

21
  • LUCAS MARIANO GALDINO DE ALMEIDA
  • Minerando Exceções Runtime não Documentadas em Bibliotecas Java a partir do GitHub: Um Estudo Exploratório

  • Orientador : ROBERTA DE SOUZA COELHO
  • MEMBROS DA BANCA :
  • ROBERTA DE SOUZA COELHO
  • UIRA KULESZA
  • EIJI ADACHI MEDEIROS BARBOSA
  • MARCELO DE ALMEIDA MAIA
  • Data: 14/08/2018

  • Mostrar Resumo
  • Exceções uncaught não são um cenário excepcional nos sistemas atuais. Estima-se que as exceções uncaught  representem dois terços dos crashs em sistemas Java. Tais exceções podem ser lançadas por problemas no código da aplicação, no hardware subjacente ou até mesmo por uma API reutilizada. Muito frequentemente, a documentação sobre as exceções sinalizadas pelos métodos da API está ausente ou incompleta. Como conseqüência, o desenvolvedor geralmente descobre essas exceções quando elas ocorrem no ambiente de produção causando crashes. Este trabalho relata um estudo exploratório que extraiu os stack traces inseridas em issues do GitHub para descobrir as interfaces excepcionais não documentadas de APIs. No geral, foram mineradas as issues 2.970 projetos Java hospedados no GitHub, dos quais foram extraídos e aproximadamente 66.118 stack traces. Neste estudo, a interface excepcional de um conjunto de aproximadamente 600 APIs do Maven foram investigadas. Os resultados do estudo de mineração mostram que as informações disponíveis nas stack traces embutidas nas issues podem, de fato, ser usadas para descobrir exceções não documentadas lançadas pelos métodos da API.


  • Mostrar Abstract
  • Uncaught exceptions are not an exceptional scenario in current applications. The uncaught exceptions are estimated to account for two thirds of system crashes. Such exceptions can be thrown on the application itself, by the underlying system or hardware, or even by a reused API. More often than not, the documentation about the runtime exceptions signaled by API methods are absent or incomplete. As a consequence, the developer usually discovers about such exceptions when they happen in production environment - leading to application crashes. This work reports an exploratory study that mined the exception stack traces embedded on GitHub issues to discover the undocumented exception interfaces of API methods. Overall the issues of 2.970 java projects hosted in GitHub were mined and 66.118  stack traces were extracted. Hence, a set of top maven APIs where investigated using this stack traces data set, and undocumented exception interfaces could be discovered. The results of the mining study show that the information embedded on issues can indeed be used to discover undocumented exceptions thrown by API methods.


22
  • JOÃO CARLOS EPIFANIO DA SILVA
  • Investigação do Ensino de Engenharia de Requisitos na Perspectiva da Academia e da Indústria: Foco em Documentação de Requisitos

  • Orientador : MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • MEMBROS DA BANCA :
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • LYRENE FERNANDES DA SILVA
  • ISABEL DILLMANN NUNES
  • MARIA LENCASTRE PINHEIRO DE MENEZES E CRUZ
  • Data: 15/08/2018

  • Mostrar Resumo
  • Na literatura muitos problemas são apontados referentes ao processo da Engenharia de Requisitos. Pesquisas recentes demonstram que os ambientes de desenvolvimento de software enfrentam muitos desafios que vão desde a elicitação de requisitos até sua validação. Os desafios listados na literatura fazem parte de tópicos ensinados na disciplina de Engenharia de Requisitos oferecidos nos cursos de graduação em ciências da computação e cursos afins. Esses desafios impactam na qualidade do produtos e podem colocar em risco a continuidade de um projeto. Logo, acredita-se que possa existir um déficit no ensino da disciplina que impacta na indústria bem como a falta de paralelismo de ambos contextos. Diante desse cenário, este trabalho elencou metodologias e atividades que mudam o método tradicional de ensino de Engenharia de Requisitos. As atividades têm foco na interpretação de soluções e escrita de requisitos. Para isso foi necessário realizar uma revisão sistemática da literatura a fim de identificar como a disciplina é lecionada bem como um survey destinado a professores e indústria visando identificar as principais sugestões e dificuldades relacionadas com a disciplina de engenharia de requisitos. Verificou-se que os professores enfrentam muitos desafios no ensino e a indústria muitos problemas que podem ser tratados ainda na academia. A partir desses resultados concluiu-se que é necessário contornar os desafios apresentados, o que pode ser feito logo na academia, para que não impactem na indústria. Há também a necessidade de atividades mais práticas e novas abordagens na sala de aula. Na indústria, recomendamos a colaboração com a academia. Desta forma, uma vez identificadas as demandas do setor, a academia pode proporcionar aos futuros profissionais uma formação baseada nas habilidades esperadas.



  • Mostrar Abstract
  • In the literature, many problems are pointed out regarding the process of Requirements Engineering. Recent research shows that software development environments face many challenges ranging from requirement elicitation to validation. The challenges listed in the literature are part of topics within the academy in the lecture of Requirements Engineering. Those challenges impact on product quality and may compromise the continuity of a project. Therefore, we believe that maybe there is a deficit in the teaching of the lecture that impacts on the industry, besides a possible lack of parallelism in both contexts. Concerning that scenario, this work lists methodologies and activities that change the traditional method of teaching related to Requirements Engineering. The activities focus on interpreting solutions and writing requirements. For that, it was necessary to perform a systematic review of the literature in order to identify how the lecture is taught. Besides that, we did a survey directed to professors and industry aiming to identify the state of the lecture and difficulties within the area in the country. It was verified that professors and industry face many challenges. The industry challenges may be a consequence of academy teaching. It is necessary to get to know the challenges before they impact on the job market, which means that they need to be identified already in the academy.  From the results that we got, it was concluded that, indeed, it is essential to overcome the challenges presented still in the academy. There is Also a need for more practical activities and new approaches in the classroom. On the other hand, in the industry, we recommend that they collaborate with the academy. In this way, once the industry demands are identified, the academy can provide, for the future professionals, a formation based on expected skills.


23
  • JEFFERSON IGOR DUARTE SILVA
  • Uma Ferramenta baseada em Inteligência Artificial para a Exploração do Espaço de Projeto de Redes em Chip.

  • Orientador : MARCIO EDUARDO KREUTZ
  • MEMBROS DA BANCA :
  • DEBORA DA SILVA MOTTA MATOS
  • MARCIO EDUARDO KREUTZ
  • MONICA MAGALHAES PEREIRA
  • Data: 29/08/2018

  • Mostrar Resumo
  • "Com o crescente número de núcleos nos Sistemas em Chip (SoCs), as arquiteturas de barramento apresentaram algumas limitações no tocante a desempenho. Com as aplicações demandando mais largura de banda e menores latências, a tecnologia de barramento não conseguiu suprir as necessidades devido ao grande comprimento dos fios e o crescimento da capacitância. Diante deste cenário, as redes em chip (Networks on Chip, NoC) surgiram como uma forma de superar tais limitações encontradas nas arquiteturas baseadas em barramento. As NoCs são compostas por um conjunto de roteadores e enlaces de comunicação, cada componente tem suas próprias características, logo, explorar todas as possibilidades para cada componente é inviável devido ao amplo espaço de projeto. Portanto, alguns métodos para acelerar esse processo devem ser empregados. Nesse trabalho foi proposto o uso de técnicas de Inteligência Artificial (IA) para otimizar as arquiteturas de redes em chip. Isso foi alcançado devido ao desenvolvimento de uma ferramenta que emprega métodos de IA para explorar o espaço de projeto em termos de predição de latência para diferentes configurações de componentes para NoCs. Foram testados nove classificadores. Para avaliar a ferramenta proposta foram realizados testes com aplicações de audio e video, usando dois padrões de tráfego (Perfeitamente aleatório e Transposto) e quatro diferentes requisitos de comunicação. Os resultados preliminares demonstram uma acurácia de 85% usando árvores de decisão para prever os valores de latência. "


  • Mostrar Abstract
  • With the increasing number of cores in Systems on Chip (SoCs), bus architectures have suffer some limitations regarding performance. As applications demand more bandwidth and lower latencies, busses could not comply with such requirements due to longer wires and increased capacitancies. Facing this scenario, Networks-on-Chip (NoCs) emerged as a way to overcome limitations found in bus-based systems. NoCs are composed of a set routers and communication links. Each component has its own characteristics. Fully ex- ploring all possible NoC characteristics settings is unfeasible due to the huge design space to cover. Therefore, some methods to speed up this process are needed. In this work we propose the usage of Artificial Intelligence techniques to optimize NoC architectures. This is accomplished by developing an AI based tool to explore the design space in terms of latency prediction for different NoC components configuration. Up to now, nine classifiers were evaluated. To evaluate the tool tests were performed on Audio/Video applications with two traffic patterns, Perfect Shuffle and Matrix Transpose, with four different com- munication requirements. The preliminaries results show an accuracy up to 85% using a Decision Tree to predict latency values. 

24
  • JHOSEPH KELVIN LOPES DE JESUS
  • Abordagens baseadas em Teoria da Informação para Seleção Automatizada de Atributos

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • MEMBROS DA BANCA :
  • ANNE MAGALY DE PAULA CANUTO
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • DANIEL SABINO AMORIM DE ARAUJO
  • ANDRÉ CARLOS PONCE DE LEON FERREIRA DE CARVALHO
  • Data: 21/09/2018

  • Mostrar Resumo
  •  

    Um dos principais problemas dos algoritmos de aprendizado de máquina é a maldição da dimensionalidade. Com o rápido crescimento de dados complexos em cenários do mundo real, a seleção de atributos se torna uma etapa de pré-processamento obrigatória em qualquer aplicação para reduzir a complexidade dos dados e o tempo computacional. Com base nisso, vários trabalhos foram produzidos para desenvolver métodos eficientes para realizar essa tarefa. A maioria dos métodos de seleção de atributos selecionam os melhores atributos baseado em alguns critérios específicos. Além disso, estudos recentes têm construído com sucesso modelos para selecionar atributos considerando as particularidades dos dados, assumindo que amostras similares devem ser tratadas separadamente. Embora algum avanço tenha sido feito, uma má escolha de um único algoritmo ou critério para avaliar a importância dos atributos, e a escolha arbitrária dos números de atributos feita pelo usuário podem levar a uma análise deficiente. A fim de superar algumas dessas questões, este trabalho apresenta o desenvolvimento de algumas duas vertentes de abordagens de seleção de atributos automatizadas. A primeira são métodos de fusão de múltiplos algoritmos de seleção de atributos, que utilizam estratégias baseadas em ranking e comitês de classificadores para combinar algoritmos de seleção de atributos em termos de dados (Fusão de Dados) e de decisão (Fusão de Decisão), permitindo aos pesquisadores considerar diferentes perspectivas na etapa de seleção de atributos. O segundo método (PF-DFS) traz uma melhoria de um algoritmo de seleção dinâmico (DFS) usando a ideia da otimização multiobjetivo pela fronteira de pareto, que nos permite considerar perspectivas distintas da relevância dos atributos e definir automaticamente o número de atributos para selecionar. As abordagens propostas foram testadas usando mais de 15 bases de dados reais e artificiais e os resultados mostraram que, quando comparado com métodos de seleção individuais, como o próprio DFS original, o desempenho de um dos métodos propostos é notavelmente superior. De fato, os resultados são promissores, uma vez que as abordagens propostas também alcançaram desempenho superiores quando comparados a métodos consagrados da redução de dimensionalidade, e ao usar os conjuntos de dados originais, mostrando que a redução de atributos ruidosos e/ou redundantes pode ter um efeito positivo no desempenho de tarefas de classificação.

     

  • Mostrar Abstract
  • One of the main problems of machine learning algorithms is the dimensionality problem. With the rapid growth of complex data in real-world scenarios, attribute selection becomes a mandatory pre-processing step in any application to reduce data complexity and computational time. Based on this, several works were produced to develop efficient methods to accomplish this task. Most attribute selection methods select the best attributes based on some specific criteria. In addition, recent studies have successfully constructed models to select attributes considering the particularities of the data, assuming that similar samples should be treated separately. Although some progress has been made, a poor choice of a single algorithm or criterion to assess the importance of attributes, and the arbitrary choice of attribute numbers made by the user can lead to poor analysis. In order to overcome some of these issues, this paper presents the development of some two strands of automated attribute selection approaches. The first are fusion methods of multiple attribute selection algorithms, which use ranking-based strategies and classifier committees to combine attribute selection algorithms in terms of data (Data Fusion) and decision (Fusion Decision) algorithms, allowing researchers to consider different perspectives in the attribute selection step. The second method (PF-DFS) brings an improvement of a dynamic selection algorithm (DFS) using the idea of Pareto frontier multiobjective optimization, which allows us to consider different perspectives of the relevance of the attributes and to automatically define the number of attributes to select . The proposed approaches were tested using more than 15 actual and artificial databases and the results showed that when compared to individual selection methods such as the original DFS itself, the performance of one of the proposed methods is notably higher. In fact, the results are promising since the proposed approaches have also achieved superior performance when compared to established dimensionality reduction methods, and by using the original data sets, showing that the reduction of noisy and / or redundant attributes may have a positive effect on the performance of classification tasks.

25
  • SAMUEL DA SILVA OLIVEIRA
  • Otimização de Topologia Irregular ParaAplicações Tempo Real e Não Tempo Real emMP-SoCs Baseadas em Redes-em-Chip.

  • Orientador : MARCIO EDUARDO KREUTZ
  • MEMBROS DA BANCA :
  • MARCIO EDUARDO KREUTZ
  • MONICA MAGALHAES PEREIRA
  • GUSTAVO GIRAO BARRETO DA SILVA
  • ALISSON VASCONCELOS DE BRITO
  • Data: 07/12/2018

  • Mostrar Resumo
  • Com o avanço nas arquiteturas multiprocessadas as redes-em-chip se tornaram uma solução viável na etapa de comunicação das mesmas. Devido existirem vários tipos de arquiteturas de comunicação entre as redes-em-chip, algumas usam topologias regulares, que são mais comuns e fáceis de se projetar. Outras, no entanto preveem alguma irregularidade nos padrões de comunicação, assim utilizam topologias irregulares. Uma boa exploração de espaço de projeto pode levar a configurações mais otimizadas. Este trabalho propõe uma rede com topologia irregular otimizada, onde a comunicação é baseada em tabelas de roteamento e uma ferramenta que busca realizar essa exploração através de um Algoritmo Genético. A rede proposta nesse trabalho apresenta roteadores heterogêneos (que podem ajudar na otimização da rede) e oferece suporte a pacotes tempo real e não tempo real. O objetivo principal desse trabalho consiste na proposta de uma exploração de espaço de projeto que objetiva encontrar redes otimizadas para latência média, uma maior porcentagem de pacotes tempo real entregues dentro do prazo estipulado e um ganho em área, através da diminuição do número de roteadores.


  • Mostrar Abstract
  • With the evolution of multiprocessing architectures, Networks-on-Chip (NoCs) have become a viable solution for the communication subsystem. Since there are many possible architectural implementations, some use regular topologies, which are more common and easier to design. Others however, follow irregularities in the communication pattern, turning into irregular topologies. A good design space exploration can give us the configuration with better performance among all architectural possibilities. This work proposes a network with optimized irregular topology, where the communication is based on routing tables and a tool that seeks to perform this exploration through a Genetic Algorithm. The network proposed in this work presents heterogeneous routers (which can help with network optimization) and supports real-time and non real- time packets. The goal of this work is to find a network (or a set of networks), through the design space exploration, that has the best average latency and the highest percentage of packets that meet their deadlines.

26
  • SAMUEL DE MEDEIROS QUEIROZ
  • Interoperabilidade Intra-Plataforma de Infraestrutura como Serviço: Um Estudo Exploratório com OpenStack

     

  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • ANDREY ELÍSIO MONTEIRO BRITO
  • JACQUES PHILIPPE SAUVÉ
  • NELIO ALESSANDRO AZEVEDO CACHO
  • THAIS VASCONCELOS BATISTA
  • Data: 10/12/2018

  • Mostrar Resumo
  • O surgimento de novas tecnologias digitais introduziu desafiadores requisitos técnicos e de negócio. A tradicional abordagem de prover infraestrutura computacional para aplicações, com suporte interno para gerenciamento de hardware, não se constitui em uma maneira efetiva, do ponto de vista técnico e econômico, para fornecer alto desempenho, confiabilidade e escalabilidade. Como a maior mudança de paradigma tecnológico na história da humanidade, a computação em nuvem provê diversas alternativas de modelos de implantação e serviço, adequadas a diversos requisitos, como segurança, latência, desempenho computacional, disponibilidade e custo. Portanto, várias empresas distribuem milhares de nuvens em todo o mundo, criando um mercado saudável por meio da concorrência, em que os provedores criam combinações exclusivas de recursos para diferenciar-se dos concorrentes. Conseqüentemente, no lado do consumidor, a escolha de um fornecedor geralmente se traduz em aprisionamento à tal fornecedor, que é uma situação em que as aplicações dependem muito da abordagem do fornecedor de expor recursos, dificultando a alternância entre os fornecedores sempre que for conveniente. Uma revisão preliminar da literatura sugere que o bloqueio de fornecedor, que tem sido amplamente investigado em Infraestrutura como Serviço (IaaS) em ambientes interplataforma, ainda não foi documentado como um problema intra-plataforma. Na indústria, o OpenStack prova que a falta de interoperabilidade é uma preocupação real, mesmo entre suas implementações. Portanto, este estudo propõe documentar a interoperabilidade entre plataformas, como um problema do OpenStack, detalhando suas situações de bloqueio, sua solução técnica, que é um middleware que abstrai as diferenças de implantação e as causas de bloqueio do fornecedor contra a interoperabilidade entre plataformas, como relatado na literatura.

    .


  • Mostrar Abstract
  • The emergence of new digital technologies come with challenging technical and business requirements. The traditional approach to provide computational infrastructure to application workloads, which relies on in-house management of hardware, does not present technical and cost-effective attributes to deliver high-performance, reliability and scalability. As the biggest technologic paradigm shift in the history of humanity, cloud computing allows diverse deployment and service model alternatives, suitable to diverse requirements, such as security, latency, computational performance, availability and cost. Therefore, numerous companies distribute thousands of clouds worldwide, creating an equitable market through competition, where players create unique features to differentiate from competitors. Consequently, in the consumer side, picking a vendor tipically translates into vendor lock-in, a situation where the applications heavily depend on the vendor’s approach of exposing features, making it difficult to switch between vendors whenever convenient or to support complex scenarios across multiple distributed heterogeneous clouds, such as federation. An immediate work-around for users is to pick cloud solutions that implement standards or post-facto open source platforms, such as OpenStack, which are assumed to provide native interoperability between installations. In the industry, however, OpenStack proves that the lack of interoperability is a real concern even between its deployments, due the high flexibility and complexity of supported use cases. Therefore, this investigation documents intra-platform interoperability, as in OpenStack, presenting in detail the Python client library created by the community to abstract deployment differences, counting with numerous and significant contributions from the author. Afterwards, an extensive validation of that library is performed across one testing and five production clouds from different vendors worldwide, because despite the fact the library is extensively used by the community, it had never been formally validated. The validation unveiled bugs, functionality and documentation gaps. Since the OpenStack intra-platform interoperability had never been documented in the literature, a systematic literature review followed, allowing a deep comparison of the state of the art of vendor lock-in taxonomy and approaches in opposition to that library, presenting its advantages, disadvantages and recommendations for users. Lastly, the suggestions for future work include support for multiple programming languages and the adoption of the client library as a standard for inter-platform interoperability.

27
  • ALLAN VILAR DE CARVALHO
  • O Problema do Caixeiro Viajante com Múltiplos Passageiros e Quota

  • Orientador : MARCO CESAR GOLDBARG
  • MEMBROS DA BANCA :
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MARCO CESAR GOLDBARG
  • MATHEUS DA SILVA MENEZES
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • Data: 14/12/2018

  • Mostrar Resumo
  • O presente trabalho científico apresenta o Problema do Caixeiro Viajante com Múltiplos Passageiros e Quota, variante do Problema do Caixeiro Viajante com Quota, que consiste na obtenção de uma rota pelo caixeiro o motorista do veículo, que pode compartilhar os assentos do carro com passageiros que solicitam caronas nas localidades de sua rota. Todo passageiro embarcado é obrigado a participar do rateio dos custos dos trechos de rota do caixeiro, que estiver no veículo. Um modelo matemático, um banco de instâncias e um conjunto de métodos de resolução composto por um exato, um heurístico ad hoc e sete metaheurísticos são propostos para o problema. Os resultados do método exato para as instâncias com 10 e 20 localidades são relatados, e análises quantitativas e qualitativas de experimentos computacionais que comparam métodos de resolução entre se são apresentadas.


  • Mostrar Abstract
  • This scientific work presents the Traveling Salesman Problem with Multiple Passengers and Quota, variant of the Traveling Salesman Problem with Quota, which is to generate a route for the salesman the driver of the vehicle, which can share the car seats with passengers who request rides in the localities of your route. Every passenger on board is obliged to participate in the apportionment of the costs of the sections of route of the salesman, who is in the vehicle. A mathematical model, an instance bank and a set of resolution methods composed of an exact one, an ad hoc heuristic and seven metaheuristics are proposed for the problem. The results of the exact method for the instances with 10 and 20 localities are reported, and quantitative and qualitative analyzes of computational experiments comparing methods of resolution between them are presented.

Teses
1
  • SAMUEL LINCOLN MAGALHÃES BARROCAS
  • Uma Estratégia para Validar a Geração de Códigos de Circus para Java

  • Orientador : MARCEL VINICIUS MEDEIROS OLIVEIRA
  • MEMBROS DA BANCA :
  • MARCEL VINICIUS MEDEIROS OLIVEIRA
  • MARTIN ALEJANDRO MUSICANTE
  • UMBERTO SOUZA DA COSTA
  • ALEXANDRE CABRAL MOTA
  • BRUNO EMERSON GURGEL GOMES
  • Data: 22/02/2018

  • Mostrar Resumo
  • O uso de Geradores Automáticos de Código para Métodos Formais não apenas minimiza esforços na implementação de Sistemas de Software, como também reduz a chance da existência de erros na execução destes Sistemas. Estas ferramentas, no entanto, podem ter faltas em seus códigos-fontes que causam erros na geração dos Sistemas de Software, e então a verificação de tais ferramentas é encorajada. Esta tese de Doutorado visa criar e desenvolver uma estratégia para verificar JCircus, um Gerador Automático de Código de um amplo sub-conjunto de Circus para Java. O interesse em Circus vem do fato de que ele permite a especificação dos aspectos concorrentes e de estado de um Sistema de maneira direta. A estratégia de verificação consiste nos seguintes passos: (1) extensão da Semântica Operacional de Circus existente e prova de que ela é sólida com respeito à Semântica Denotacional existente de Circus na Teoria Unificada de Programação (UTP), que é um framework que permite prova e unificação entre diferentes teorias; (2) desenvolvimento e implementação de uma estratégia que verifica o refinamento do código gerado por JCircus, através de uma toolchain que engloba um Gerador de Sistema de Transições Rotuladas com Predicado (LPTS) para Circus e um Gerador de Modelos que aceita como entrada o LPTS e gera um Oráculo que usa o verificador de modelos Java Pathfinder, que checa o refinamento do código gerado por JCircus. Combinado com técnicas baseadas em cobertura de código, nós visamos aumentar a confiabilidade do código gerado de Circus para Java.


  • Mostrar Abstract
  • The use of Automatic Code Generators for Formal Methods not only minimizes efforts on the implementation of Software Systems, as also reduces the chance of existing errors on the execution of such Systems. These tools, however, can themselves have faults on their source codes that causes errors on the generation of Software Systems, and thus verification of such tools is encouraged. This PhD thesis aims at creating and developing a strategy to verify JCircus, an automatic code generator from a large subset of Circus to Java. The interest in Circus comes from the fact that it allows the specification of concurrent and state-rich aspects of a System in a straightforward manner. The strategy of verification consists on the following steps: (1) extension of the existing operational semantics to Circus and proof that it is sound with respect to the existing denotational semantics of circus in the Unifying Theories of Programming (UTP), a framework that allows proof and unification of different theories; (2) development and implementation of a strategy that refinement-checks the generated code by JCircus, through a toolchain that encompasses a Labelled Predicate Transition System (LPTS) Generator for Circus and a Model Generator that inputs this LPTS and generates an Oracle that uses the Java Pathfinder code model-checker that refinement-checks the generated code by JCircus. Combined with coverage-based testing techniques, we envisage improving the reliability of the Code Generation from Circus to Java.

2
  • ROMERITO CAMPOS DE ANDRADE
  • Roteamento Multicast Multisessão - Modelos e Algoritmos.

  • Orientador : MARCO CESAR GOLDBARG
  • MEMBROS DA BANCA :
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MARCO CESAR GOLDBARG
  • MATHEUS DA SILVA MENEZES
  • PAULO HENRIQUE ASCONAVIETA DA SILVA
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • Data: 14/05/2018

  • Mostrar Resumo
  • A tecnologia multicast tem sido amplamente estudada ao longo dos anos e apresenta-se como uma solução para melhor utilização dos recursos da rede. Várias abordagens já foram avaliadas para o problema considerando desde o uso de uma sessão com apenas uma fonte a um cenário com múltiplas sessões e múltiplas fontes por sessão. Neste trabalho, é feito um estudo dos modelos matemáticos para o problema com múltiplas sessões e múltiplas fontes. Dois modelos matemáticos foram propostos: uma versão multissessão mono-objetivo que visa a otimização da capacidade residual sujeito a um limite de custo e uma versão multiobjetivo com três funções-objetivo. Ambos os modelos levam em conta o cenário multissessão com uma fonte por sessão. Além disso, um estudo algorítmico foi realizado sobre um modelo da literatura que utiliza múltiplas fontes por sessão. Três conjuntos de algoritmos foram propostos. O primeiro conjunto trata do problema mono-objetivo proposto e considera as abordagens Ant Colony Optimization, Genética, GRASP e ILS. O segundo conjunto consiste dos algoritmos propostos para o modelo multiobjetivo. Foram projetados os seguintes algoritmos: NSGA2, ssNSGA2, GDE3, MOEA/D e SMS-EMOA. Além disso, foi projetado um algoritmo transgenético com subpopulações baseadas em operadores de criação de solução direcionados por objetivos do problema. Também foi utilizado o conceito de soluções de elite. No total, 8 versões do algoritmo transgenético foram avaliadas. O terceiro conjunto de algoritmos consiste da heurística MMVD proposta para o modelo da literatura com múltiplas fontes por sessão. Esta heurística é baseada no uso de diagramas de Voronoi. O processo experimental foi realizado com amplo número de instâncias configuradas de modo a avaliar diferentes situações. Os resultados foram comparados utilizando métodos estatísticos não-paramétricos. A análise final indicou que o ILS e o Genético obtiveram resultados muito similares, entretanto o ILS possui melhor tempo de processamento. A versão cross0 do algoritmo transgenético obteve o melhor resultado em praticamente todos os cenários avaliados. A heurística MMVD obteve excelentes resultados sobre algoritmos da literatura.

     


  • Mostrar Abstract
  • Multicast Technology has been studied over the last two decades and It has shown to be a good approach to save network resources. Many approaches have been considered to solve the multicast routing problem considering only one session and one source to attending session‘s demand, as well, multiple sessions with more than one source per session. In this thesis, the multicast routing problem is explored taking in consideration the modelsand the algorithms designed to solve it when where multiple sessions and sources. Two new models are proposed with different focuses. First, a mono-objective model optimizing residual capacity, Z, of the network subject to a budget is designed and the objective is to maximize Z. Second, a multi-objective model is designed with three objective functions: cost, Z and hops counting. Both models consider multisession scenario with one source per session. Besides, a third model is examined. This model was designed to optimize Z in a scenario with multiple sessions with support to more than one source per session. An experimental analysis was realized over the models considered. For each model, a set of algorithms were designed. First, an Ant Colony Optimization, a Genetic algorithm, a GRASP and an ILS algorithm were designed to solve the mono-objective model – optimizing Z subject to a budget. Second, a set of algorithm were designed to solve the multi-objective model. The classical approaches were used: NSGA2, ssNSGA2, SMS-EMOA, GDE3 and MOEA/D. In addition, a transgenetic algorithm was designed to solve the problem and it was compared against the classical approaches. This algorithm considers the use of subpopulations during the evolution. Each subpopulation is based on a solution construction operator guided by one of the objective functions. Some solutions are considered as elite solutions and they are considered to be improved by a transposon operator. Eight versions of the transgenetic algorithm were evaluated. Third, an algorithm was designed to solve the problem with multiple sessions and multiple sources per sessions. This algorithm is based on Voronoi Diagrams and it is called MMVD. The algorithm designed were evaluated on large experimental analysis. The sample generated by each algorithm on the instances were evaluated based on non-parametric statistical tests. The analysis performed indicates that ILS and Genetic algorithm have outperformed the Ant Colony Optimization and GRASP. The comparison between ILS and Genetic has shown that ILS has better processing time performance. In the multi-objective scenario, the version of Transgenetic called cross0 has shown to be statistically better than the other algorithms in most of the instances based on the hypervolume and addictive/multiplicative epsilon quality indicators. Finally, the MMVD algorithm has shown to be better than the algorithm from literature based on the experimental analysis performed for the model with multiple session and multiple sources per session.

3
  • ANTONIO DIEGO SILVA FARIAS
  • Funções Mistura Generalizada e Aplicações

  • Orientador : REGIVAN HUGO NUNES SANTIAGO
  • MEMBROS DA BANCA :
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • EDUARDO SILVA PALMEIRA
  • REGIVAN HUGO NUNES SANTIAGO
  • RONEI MARCOS DE MORAES
  • SANDRA APARECIDA SANDRI
  • Data: 29/06/2018

  • Mostrar Resumo
  • Na literatura é bastante comum encontrar problemas que necessitam de mecanismos eficazes em realizar a tarefa de combinar entradas de uma mesma natureza em um valor do mesmo tipo que as entradas. As funções de agregação são bastante eficientes na realização deste trabalho, podendo ser utilizadas, por exemplo, para modelar os conectivos da lógica fuzzy e também em problemas de tomada de decisão. Uma importante família de agregações, pertencente à classe das funções do tipo média, foi introduzida por Yager, em 1988, que as denominou de funções de “Média Ponderada Ordenada” (Ordered Weighted Averaging - OWA). Essas funções são uma espécie de média ponderada, cujos pesos são estáticos e não são associados as entradas particulares, mas as suas respectivas magnitudes, ou seja, a importância de uma entrada é determinada pela magnitude de seu valor. No entanto, a estabilidade dos pesos de uma OWA traz algumas limitações, uma vez que os pesos, que devem ser previamente escolhidos, podem ser ótimos para algumas entradas e péssimos para outras. Mais recentemente, tem-se verificado que funções não pertencentes à classe das agregações também podem ser bastante eficazes em combinar entradas de um mesmo tipo, como por exemplo, as “Préagregações” (Preaggrega-tions), as funções “Mistura (Mixture) e “Mistura Generalizada” (Generalized Mixture - GM), que não necessitam da Condição de Monotonicidade obrigatória para as funções de agregação. As funções mistura e mistura generalizada também são médias ponderadas, mas diferentemente das OWA de Yager, possuem pesos dinâmicos, o que possibilita um melhor ajuste a cada uma das entradas da função. Este trabalho generaliza as funções “Mistura Generalizada” (Generalized Mixture - GM), dando origem as funções “Mistura Generalizada Limitada” (Bounded Generalized Mixture -BGM) e propõe as “OWA dinâmicas” (Dynamic Ordered Weighted Averaging - DYOWA) defi-nidas sobre reticulados.


  • Mostrar Abstract
  • In the literature it is quite common to find problems that need efficient mechanisms in accomplishing 
    the task of combining entries of the same nature in a value of the same type as the inputs. The
    aggregation functions are quite efficient in the accomplishment of this work, being able to be used,
    for example, to model the connectives of the fuzzy logic and also in problems of decision making. An
    important family of aggregations, belonging to the middle class of functions, was introduced by Yager
    in 1988, who called them ordered weighted averaging functions (OWA). These functions are a kind of
    weighted average, whose weights are not associated with the particular inputs, but their respective
    magnitudes, that is, the importance of an input is determined by their value. More recently, it has
    been found that non-aggregate class functions may also be able to combine inputs, such as pre-
    aggregations and mixture functions, which may not satisfy the mandatory monotonicity condition for
    aggregation functions. Thus, the objective of this work is to present a detailed study on aggregations
    and preaggregations, in order to provide a good theoretical basis in an area that has a wide possibility
    of applications. We present a detailed study of generalized mixing functions - GM, which extend the
    Yager OWA functions, and propose some ways to generalize the GM functions: limited generalized mixing
    functions and dynamic ordered weighted averaging functions.
4
  • EDMILSON BARBALHO CAMPOS NETO
  • Enhancing the SZZ Algorithm to Deal with Refactoring Changes

  • Orientador : UIRA KULESZA
  • MEMBROS DA BANCA :
  • DANIEL ALENCAR DA COSTA
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • INGRID OLIVEIRA DE NUNES
  • MARCELO DE ALMEIDA MAIA
  • ROBERTA DE SOUZA COELHO
  • UIRA KULESZA
  • Data: 20/07/2018

  • Mostrar Resumo
  • SZZ algorithm was proposed by Śliwerski, Zimmermann, and Zeller (hence the SZZ abbreviation) to identify fix-inducing changes. Despite the wide adoption of this algorithm, SZZ still faces limitations, which have been reported by recent researcher work over the last years. No several research work widely surveys how SZZ has been used, extended and evaluated by the software engineering community. Moreover, not much research work has proposed improvements to SZZ. In this context, this thesis has a goal to explore the existing limitations documented in the literature about SZZ, to enhance the state-of-the-art of SZZ proposing solutions to some of these limitations. First, we perform a systematic mapping study to answer what is the state-of-the-art of the SZZ algorithm and to explore how it has been used, its limitations, proposed improvements, and evaluations. Our results in this study show that the vast majority of the analyzed papers use SZZ as a foundation for their empirical studies (79%), while only a few propose direct improvements to SZZ (6%) or evaluate it (4%). We also observe that SZZ has many limitations unaddressed, such as the bias related to refactoring changes, which have not been addressed by any previous SZZ implementation. Second, we conduct an empirical study to investigate the relationship between refactoring changes and SZZ results. We use RefDiff, a tool that has the highest precision reported in the literature to detect code refactorings. We analyze an extensive dataset that included 31,518 issues of ten systems, with 64,855 bug-fix and 20,298 fix-inducing changes. We run RefDiff both in bug-fix and fix-inducing changes generated by a recent SZZ implementation — MA-SZZ. The results indicate a refactoring ratio of 6.5% fix-inducing changes and 19.9% in bug-fix changes. We incorporated RefDiff into MASZZ and proposed a Refactoring-Aware SZZ implementation (RA-SZZ). RA-SZZ reduces 20.8% of the lines that were flagged as fix-inducing changes by MA-SZZ. These results suggest that refactoring really can impact SZZ results. By using an evaluation framework, we found that RA-SZZ reduces of disagreement ratio compared to prior ones, but our results suggest that RA-SZZ still needs to improve its accuracy. Finally, we evaluated the RA-SZZ accuracy using a validated dataset constructed by using a well-accepted dataset. Moreover, we revisited known SZZ limitation to improve its accuracy, e.g., integrating a novel refactoring-detection tool — RMiner. We observe that after refining RA-SZZ, in the median, 44% of lines that are flagged as fix-inducing lines per issue are correct, while only 29% are valid in MA-SZZ-generated results. We also manually analyzed RA-SZZ results and we found that there are still refactorings and equivalent changes to be recognized by SZZ. This result reinforces that detecting refactoring indeed increases the SZZ accuracy. Besides, our thesis results contribute to SZZ maturation by suggesting that refactoring impact in SZZ may be even higher if it addresses new improvements in future work.


  • Mostrar Abstract
  • O algoritmo SZZ foi inicialmente proposto Sliwerski, Zimmermann e Zeller (origem da abreviação SZZ) para identificar as mudanças que introduzem erro no código. Contudo, embora bem aceito pela comunidade acadêmica, muitos pesquisadores têm reportado, ao longo dos anos, limitações associadas ao algoritmo SZZ. Por outro lado, não existe nenhum trabalho que tenha pesquisado profundamente como o SZZ é usado, estendido ou avaliado pela comunidade de engenharia de software. Além disso, poucos trabalhos têm proposto melhorias ao algoritmo SZZ. Nesse contexto, esta tese tem como objetivo revelar as existentes limitações documentadas na literatura sobre o algoritmo SZZ para melhorar o seu estado da arte, propondo soluções para algumas dessas limitações. Primeiramente, nós realizamos um mapeamento sistemático para identificar qual o estado da arte do algoritmo SZZ e explorar como ele tem sido utilizado, suas limitações, melhorias propostas e avaliações. Nós adotamos uma técnica de pesquisa existente conhecida como “snowballing” (em português, bola de neve) para conduzir estudo sistemáticos na literatura. Assim, nós partimos de dois renomados artigos e lemos todas as suas 589 citações e referências, resultando em 190 artigos a serem analisados. Nossos resultados desse estudo mostram que a maioria dos artigos usam o SZZ como base de estudos empíricos (83%), enquanto apenas poucos artigos realmente propõem melhorias diretas ao SZZ (3%) ou o avaliam (7%). Nós também observamos que o SZZ possui muitas limitações não consertadas, tais como o viés relacionado a mudanças semanticamente equivalentes, por exemplo, refatorações, que não foram endereçadas por nenhuma implementação anterior do SZZ. Posteriormente, nós conduzimos um estudo empírico para investigar a relação entre refatorações e os resultados do SZZ. Nós utilizamos para isso o RefDiff, a ferramenta de detecção de refatoração com a maior precisão reportada na literatura. Nós executamos o RefDiff tanto nas mudanças analisadas pelo SZZ como responsáveis pelo conserto dos erros (do inglês, “issue-fix changes”) como nas mudanças identificadas pelo algoritmo como que induziram ao conserto (do inglês, “fix-inducing changes”). Os resultados desse estudo indicam uma taxa de refatoração de 6,5% nas fix-inducing changes e 20% nas issue-fix changes. Além disso, nós identificamos que 39% das fix-inducing changes derivam de issue-fix changes com refatorações, logo tais mudanças não deveriam nem ter sido analisadas pelo SZZ. Esses resultados sugerem que refatorações realmente podem impactar os resultados do SZZ. Por fim, nós pretendemos evoluir este segundo estudo expandindo os tipos de refatorações identificadas, incorporando outras ferramentas de detecção de refatoração ao nosso algoritmo. Além disso, nós planejamos executar um terceiro estudo para avaliar nossa implementação melhorada do SZZ para lidar com mudanças semanticamente equivalente usando um framework de avaliação em um mesmo conjunto de dados anteriormente utilizado na literatura. Nós esperamos que os resultados dessa tese possam contribuir para a maturação do SZZ e, consequentemente, poder aproximá-lo de uma maior aceitação do algoritmo SZZ na prática.

5
  • IGOR ROSBERG DE MEDEIROS SILVA
  • BO-AMHM: Uma Arquitetura Multiagente para Hibridização de Meta-Heurísticas para problemas Biobjetivo

  • Orientador : ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MEMBROS DA BANCA :
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • GIVANALDO ROCHA DE SOUZA
  • MARCO CESAR GOLDBARG
  • MYRIAM REGATTIERI DE BIASE DA SILVA DELGADO
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • Data: 03/08/2018

  • Mostrar Resumo
  • Várias pesquisas têm apontado a hibridização de meta-heurísticas como uma forma eciente de tratar problemas de otimização combinatória. Hibridização permite a combinação de diferentes técnicas, explorando vantagens e compensando desvantagens de cada uma delas. A AMHM é uma arquitetura adaptativa promissora para a hibridização de metaheurísticas, originalmente desenvolvida para problemas mono-objetivo. Essa arquitetura baseia-se nos conceitos de Sistemas Multiagente e Otimização por Nuvem de Partículas. No presente trabalho, nós propomos uma extensão da AMHM para o cenário biobjetivo. A arquitetura proposta é chamada BO-AMHM. Para adaptar a AMHM ao contexto biobjetivo, nós redenimos alguns conceitos tais como posição e velocidade das partículas. Neste estudo a arquitetura proposta é aplicada ao Problema do Caixeiro Viajante Simétrico biobjetivo. Quatro técnicas foram hibridizadas: PAES, GRASP, NSGA2 e Anytime-PLS. Testes com 11 instâncias biobjetivo foram realizados e os resultados mostraram que a BO-AMHM é capaz de prover conjuntos não dominados melhores em comparação aos obtidos por algoritmos existentes na literatura e versões híbridas desses algoritmos desenvolvidas neste trabalho.


  • Mostrar Abstract
  • Several researches have pointed the hybridization of metaheuristics as an eective way to deal with combinatorial optimization problems. Hybridization allows the combination of dierent techniques, exploiting the strengths and compensating the weakness of each of them. MAHM is a promising adaptive framework for hybridization of metaheuristics, originally designed for single objective problems. This framework is based on the concepts of Multiagent Systems and Particle Swarm Optimization. In this study we propose an extension of MAHM to the bi-objective scenario. The proposed framework is called BOMAHM. To adapt MAHM to the bi-objective context, we redene some concepts such as particle position and velocity. In this study the proposed framework is applied to the biobjective Symmetric Travelling Salesman Problem. Four methods are hybridized: PAES, GRASP, NSGA2 and Anytime-PLS. Experiments with 11 bi-objective instances were performed and the results show that BO-MAHM is able to provide better non-dominated sets in comparison to the ones obtained by algorithms existing in literature as well as hybridized versions of those algorithms proposed in this work.

6
  • DENIS FELIPE
  • MOSCA/D: Algoritmos Científicos Multiobjetivo Baseados em Decomposição

  • Orientador : ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MEMBROS DA BANCA :
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MARCO CESAR GOLDBARG
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • MATHEUS DA SILVA MENEZES
  • MYRIAM REGATTIERI DE BIASE DA SILVA DELGADO
  • Data: 17/08/2018

  • Mostrar Resumo
  • Este trabalho apresenta uma versão multiobjetivo dos Algoritmos Científicos baseada em
    decomposição (MOSCA/D). Tal abordagem é uma nova meta-heurística inspirada pelos
    processos da pesquisa científica para resolver problemas de otimização multiobjetivo. O
    MOSCA/D usa o conceito de tema para direcionar o esforço computacional da busca
    para regiões promissoras do espaço objetivo, fixando diferentes variáveis de decisão em
    cada iteração. Um modelo probabilístico baseado na estatística TF-IDF auxilia a escolha
    de tais variáveis. Experimentos computacionais aplicaram o MOSCA/D a 16 instâncias
    do problema da mochila multidimensional multiobjetivo (MOMKP) com até 8 objetivos.
    Os resultados foram comparados ao NSGA-II, SPEA2, MOEA/D, MEMOTS, 2PPLS,
    MOFPA e HMOBEDA, cobrindo três algoritmos multiobjetivo clássicos, dois algoritmos
    do estado da arte do problema e dois algoritmo publicados mais recentemente para o
    problema, respectivamente. Testes estatísticos mostraram evidências de que o MOSCA/D
    pode competir com outras abordagens consolidadas da literatura e pode agora ser considerado o novo algoritmo do estado da arte para o MOMKP em instâncias com mais de
    dois objetivos, considerando os indicadores de qualidade hipervolume e epsilon.


  • Mostrar Abstract
  • This work presents a multi-objective version of the Scientific Algorithms based on decomposition (MOSCA/D). Such approach is a new metaheuristic inspired by the processes
    of scientific research to solve multi-objective optimization problems. MOSCA/D uses the
    concept of theme to direct the computational effort of the search to promising regions
    of the objective space, fixing different decision variables in each iteration. A probabilistic
    model based on the TF-IDF statistic assists the choice of such variables. Computational
    experiments applied MOSCA/D to 16 instances of the multi-objective multidimensional
    knapsack problem (MOMKP) with up to 8 objectives. The results were compared to
    NSGA-II, SPEA2, MOEA/D, MEMOTS, 2PPLS, MOFPA and HMOBEDA, covering three classical multi-objective algorithms, two state of the art algorithms for the problem
    and two most recently published algorithms for the problem, respectively. Statistical tests
    showed evidence that MOSCA/D can compete with other consolidated approaches from
    literature and can now be considered the new state of the art algorithm for the MOMKP
    in instances with more than two objectives, considering the hypervolume and epsilon
    quality indicators.

7
  • JOSÉ AUGUSTO SARAIVA LUSTOSA FILHO
  • Diversidade e similaridade como critério de seleção de classificadores em comitês de seleção dinâmica

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • MEMBROS DA BANCA :
  • ANNE MAGALY DE PAULA CANUTO
  • ARAKEN DE MEDEIROS SANTOS
  • BRUNO MOTTA DE CARVALHO
  • DANIEL SABINO AMORIM DE ARAUJO
  • GEORGE DARMITON DA CUNHA CAVALCANTI
  • Data: 24/08/2018

  • Mostrar Resumo
  • As técnicas de classificadores de padrões são consideradas atividades chave na área de
    reconhecimento de padrões, onde busca-se atribuir uma amostra de testes à uma classe. A
    utilização de classificadores individuais geralmente apresentam deficiências nas taxas de
    reconhecimento quando comparado à utilização de múltiplos classificadores para executar
    a mesma tarefa de classificação. Conforme a literatura, comitês de classificadores proveem
    melhores taxas de reconhecimento quando os classificadores candidatos apresentam erros
    não correlacionados em diferentes sub-espaços do problema. Diversos trabalhos exploram
    diversidade em comitês de classificadores baseados em seleção estática e apontam que
    a diversidade entre os classificadores base é um fator que influência positivamente nas
    taxas de acurácias dos comitês, no entanto no contexto de comitês baseados em seleção
    dinâmica há pouca literatura relacionada e carência de pesquisas que exploram a influência
    da diversidade e similaridade. Nesse contexto, essa tese de doutorado explora diversos
    métodos de seleção de classificadores, baseados em seleção dinâmica, adicionando um
    critério de seleção que prioriza diversidade e/ou similaridade entre os classificadores base.
    Dessa forma os experimentos avaliados visam elucidar empiricamente a relevância da
    diversidade e/ou similaridade entre os classificadores base de comitês baseados em seleção
    dinâmica.


  • Mostrar Abstract
  • Pattern classification techniques can be considered the most important activitie in pattern
    recognition area where aims assing a unknown sample test to a class. Generally individual
    classifiers haven’t good recognition rates compared to multiple classifiers. Thus ensemble
    of classifiers can be used to increase the accuracy of classification systems. Ensemble
    systems provide good recognition rates when the classifiers members of the ensemble
    system have uncorrelated errors in different sub-spaces of the problem; This characteristic
    is measured by diversity measures. In this context, the present thesis explores ensemble
    systems using dynamic selection. Ao contrário de comitês que utilizam seleção estática,
    em comitês de classificadores utilizando seleção dinâmica, para cada padrão de teste
    estima-se o nível de competência de cada classificador de um conjunto inicial. Apenas
    os classificadores mais competentes são selecionados para classificar o padrão de teste.
    O presente trabalho objetiva explorar, avaliar e propor métodos para seleção dinâmica
    de classificadores baseando-se em medidas de diversidade. Unlike emseble sysetm using
    static selection, in ensembles using dynamic selection for each test pattern is estimated
    the competence level for the initial set of classifiers. Only the most relevant classifiers are
    selected to classify the test pattern. This paper aims to explorer, evaluate and propose
    methods for ensemble systems based on diversity measures. To achieve this goal, several
    ensemble systems in the literature using dynamic selection are exploited, as well as hybrid
    versions of them are proposed in order to quantify, by experiments, the influence of diversity
    measure among classifiers members in ensemble systems. Therefore the contribution of this
    work is empirically elucidate the advantages and disadvantages of using diversity measures
    in dynamic selection of classifiers.

8
  • RONILDO PINHEIRO DE ARAUJO MOURA
  • Comitê de agrupamentos hierárquicos que preserva a T-transitividade

  • Orientador : BENJAMIN RENE CALLEJAS BEDREGAL
  • MEMBROS DA BANCA :
  • ANNE MAGALY DE PAULA CANUTO
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • FLAVIO BEZERRA COSTA
  • ARAKEN DE MEDEIROS SANTOS
  • EDUARDO SILVA PALMEIRA
  • Data: 05/10/2018

  • Mostrar Resumo
  • A ideia principal de aprendizagem por comitês é aprimorar os resultados de métodos de aprendizagem de máquina combinando múltiplos modelos. Inicialmente aplicada a problemas de aprendizagem supervisionada, esta abordagem permite produzir resultados com qualidade superior em relação a um único modelo. Da mesma forma, aprendizagem de comitê aplicados ao aprendizado não supervisionado, ou consenso de agrupamento, produz agrupamentos de alta qualidade. A maioria dos métodos de comitê para agrupamento de dados são destinados a algoritmos particionais, e apresentam resultados de qualidade superior aos agrupamentos simples. Deste modo, é razoável esperar que a combinação e agrupamentos hierárquicos podem levar a um agrupamento hierárquico de melhor qualidade. Os estudos recentes não consideram as particularidades inerentes aos diferentes
    métodos de agrupamento hierárquico durante o processo do consenso. Este trabalho investiga a consistência dos resultado do consenso considerando diferentes métodos de agrupamento hierárquico utilizados para compor o comitê. Propomos uma abordagem que preserva um tipo de transitividade presente nos dendrogramas. Neste algoritmo, os dendrogramas representando os resultados individuais dos agrupamentos bases são convertidos em matrizes ultramétricas. Então, após um processo de fuzzificação, alguns operadores de agregação com a capacidade de preservar algum tipo de transitividade geram uma matriz consenso. O agrupamento hierárquico final é obtido a partir da matriz consenso. A análise de resultados dos experimentos realizados em conjuntos de dados conhecidos e a visualização da operação do algoritmo em conjuntos de dados visuais (duas
    dimensões) evidencia que esta abordagem consegue melhorar a acurácia uma vez que preserva a propriedade da consistência.

  • Mostrar Abstract
  • The main idea of ensemble learning is improved machine learning results by combining several models. Initially applied to supervised learning, this approach usually produces better results in comparison with single methods. Similarly, unsupervised ensemble learning, or consensus clustering, create individual clustering that is more robust in comparison to unique methods. The most common methods are designed for flat clustering, and show
    superior in quality to clustering unique methods. Thus, it can be expected that consensus of hierarchical clustering could also lead to higher quality in creating hierarchical clustering. Recent studies not been taken to consider particularities inherent in the different methods of hierarchical grouping during the consensus process. This work investigates the impact of the ensemble consistency in the final consensual results considering the differents hierarchical methods uses in the ensemble. We propose a process that retains intermediate transitivity in dendrograms. In this algorithm, firstly, the dendrograms describing the base clustering are converted to an ultrametric matrix. Then, after one fuzzification process, the consensus functions based on aggregation operator with preserve transitivity property is applied to the matrices and form the final consensus matrix. The final clustering will be a dendrogram obtained from this aggregate matrix. Analyzing the results of the experiments performed on the known datasets and also visualizing algorithm’s process on the visual (two-dimensional) datasets shows this approach can significantly improve the accuracy performance once retaining the consistency property.

9
  • EDUARDO ALEXANDRE FERREIRA SILVA
  • Concepção Arquitetural de Sistema-de-Sistemas Intensivo em Software Orientado por Missões

  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • ABDELHAK-DJAMEL SERIAI
  • ELISA YUMI NAKAGAWA
  • FLAVIO OQUENDO
  • KHALIL DRIRA
  • MARCEL VINICIUS MEDEIROS OLIVEIRA
  • THAIS VASCONCELOS BATISTA
  • Data: 17/12/2018

  • Mostrar Resumo
  • As missões representam uma preocupação fundamental no desenvolvimento de sistemas de sistemas (SoS), uma vez que podem estar relacionadas tanto às capacidades dos sistemas constituintes quanto às interações entre esses sistemas que contribuem para a realização dos objetivos globais do SoS. Por esta razão, os modelos de missão são pontos de partida promissores para o processo de desenvolvimento do SoS e podem ser usados como base para a especificação, validação e verificação de modelos arquiteturais do SoS. Especificar, validar e verificar modelos de arquitetura para SoS são tarefas difíceis comparadas aos sistemas usuais, a complexidade interna desse tipo de sistema depende especialmente dos comportamentos emergentes, ou seja, características que emergem da cooperação entre as partes constituintes do SoS que muitas vezes não podem ser precisamente previsto.

    Este trabalho tem como objetivo endereçar a relação sinérgica entre a missão e modelos de arquitetura, dedicando uma atenção especial ao comportamento emergente que surge para uma determinada configuração do SoS. Propomos um processo de desenvolvimento para modelagem arquitetural de SoS, centrado nos chamados modelos de missão. Nesta proposta, o modelo de missão é usado para derivar, validar / verificar arquiteturas de SoS. Em um primeiro momento fornecemos um modelo de missão formal, então geramos a definição estrutural para a arquitetura usando a transformação de modelo. Mais tarde, conforme o arquiteto especificar os aspectos comportamentais do sistema, usando essa arquitetura podemos gerar arquiteturas concretas que serão verificadas e validadas usando abordagens baseadas em simulação. A verificação usa um modelo estatístico para verificar se as propriedades estão satisfeitas, com um grau de confiança. A validação é destinada a comportamentos e missões emergentes, mas pode ser estendida a qualquer aspecto do modelo de missão. A simulação também permite a identificação de comportamentos emergentes imprevisíveis. Um conjunto de ferramentas que integra ferramentas existentes e implementa todo o processo também é apresentado.


  • Mostrar Abstract
  • Missions represent a key concern in the development of systems-of-systems (SoS) since they can be related to both capabilities of constituent systems and interactions among these systems that contribute to the accomplishment of global goals of the SoS. For this reason, mission models are promising starting points to the SoS development process and they can be used as a basis for the specification, validation and verification of SoS architectural models. Specifying, validating and verifying architectural models for SoS are difficult tasks compared to usual systems, the inner complexity of this kind of systems relies especially on the emergent behaviors, i.e. features that emerge from the cooperation between the constituent parts of the SoS that often cannot be accurately predicted.

    This work is concerned with such a synergetic relationship between mission and architectural models, giving a special attention to the emergent behavior that arise for a given configuration of the SoS. We propose a development process for architectural modeling of SoS, centered in the so-called mission models. In this proposal, the mission model is used to both derive, validate/verify architectures of SoS. In a first moment we dene a formal mission model, then we generate the structural definition for the architecture using model transformation. Later, as the architect specify the behavioral aspects of the system, using this architecture, we can generate concrete architectures that will be verified and validated using simulation-based approaches. The verification uses statistical model checking to verify whether the properties are satisfied, within a degree of confidence. The validation is aimed to emergent behaviors and missions, but can be extended to any aspect of the mission model. The simulation also allows the identification of unpredicted emergent behaviors. A toolset that integrates existing tools and implements the whole process is also presented.

     
2017
Dissertações
1
  • ILUENY CONSTANCIO CHAVES DOS SANTOS
  • Gestão de Requisitos Legais com Foco na Conformidade dos Sistemas com a Legislação Vigente

  • Orientador : MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • MEMBROS DA BANCA :
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • JOSUÉ VITOR DE MEDEIROS JÚNIOR
  • GILBERTO AMADO DE AZEVEDO CYSNEIROS FILHO
  • Data: 16/01/2017

  • Mostrar Resumo
  • Os sistemas de informação desempenham um papel vital no apoio aos processos de negócio das empresas. Frequentemente, os softwares são um importante ativo estratégico para diversas organizações. Cada vez mais, leis e regulamentos são elaborados com o objetivo de estabelecer restrições aos sistemas de software existentes e empresas são obrigadas a desenvolver sistemas complexos que estejam em conformidade com a legislação vigente. Os requisitos legais referem-se ao conjunto de leis e regulamentos aplicáveis ao domínio do negócio do software que se pretende desenvolver. Estes requisitos são altamente sensíveis às alterações que ocorrem na legislação. As leis, assim como a sociedade, as organizações e os softwares, também evoluem. Constantemente uma nova lei é promulgada, uma lei antiga é alterada, revogada ou uma importante decisão judicial é emitida. O dinamismo das leis exige uma adaptação contínua dos requisitos legais modelados. Ao longo dos últimos anos, diversas pesquisas foram desenvolvidas abordando esta temática, mas poucas tratam dos desafios que envolvem o monitoramento e a avaliação da conformidade legal durante todo ciclo de vida dos sistemas. Os prejuízos obtidos por uma organização que não se preocupa com a conformidade legal dos requisitos de seus softwares podem ir de perdas financeiras até prejuízos com sua reputação. Neste contexto, observou-se que o gerenciamento de requisitos, notadamente através do uso da rastreabilidade dos requisitos do sistema, podem desempenhar um papel fundamental no processo de verificação da conformidade legal dos sistemas. Este trabalho apresenta uma proposta de abordagem capaz de auxiliar o gestor da equipe de desenvolvimento nas atividades de manutenção do software e de verificação da sua conformidade com as leis vigentes. Um estudo de caso foi realizado com o objetivo de avaliar a abordagem proposta. Os resultados obtidos demonstram que o esforço despendido pela equipe, na execução de boas práticas, úteis na manutenção dos elos de rastreabilidade dos requisitos legais de um software, podem auxiliar no processo de verificação de sua conformidade legal.


  • Mostrar Abstract
  • It is common sense that information systems play a vital role in supporting the business processes of companies. Often the software is a strategic important asset for many organizations. Increasingly, laws and regulations are drawn up with the aim of establishing restrictions on existing software systems and companies are required to develop complex systems that comply with current legislation. Legal requirements refer to the set of laws and regulations applying to the software business domain to be developed. These requirements are highly sensitive to changes that occur in the legislation. The laws, as well as society, organizations and software also evolve. Constantly a new law is enacted, an old law is amended, revoked or an important court decision is issued. The dynamism of the laws requires continuous adaptation of the modeled legal requirements. Over the past few years, several studies have been developed addressing this issue, but few address the challenges involving the monitoring and evaluation of legal compliance throughout the system life cycle. The losses made by an organization that does not care about the legal compliance of their software requirements can range from financial losses to losses on its reputation. In this context, it was observed that the management requirements, notably through the use of traceability of system requirements, can play a key role in the process of verifying the legal compliance of the systems. This paper presents an approach proposed able to assist the development team manager in software maintenance activities and verification of compliance with applicable laws. A case study should be conducted in order to evaluate the effectiveness of the proposed tool.

     

2
  • CARINE AZEVEDO DANTAS
  • Seleção de atributos baseado em algoritmos de agrupamento para tarefas de classificação

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • MEMBROS DA BANCA :
  • ANNE MAGALY DE PAULA CANUTO
  • BRUNO MOTTA DE CARVALHO
  • DANIEL SABINO AMORIM DE ARAUJO
  • JOAO CARLOS XAVIER JUNIOR
  • ADRIANA TAKAHASHI
  • Data: 10/02/2017

  • Mostrar Resumo
  • Com o aumento do tamanho dos conjuntos de dados utilizados em sistemas de classi-
    cação, a seleção dos atributos mais relevantes se tornou uma das principais tarefas da
    fase de pré-processamento. Em um conjunto de dados é esperado que todos os atributos
    que o descreve sejam relevantes, porém isso nem sempre acontece. Selecionar o conjunto
    de atributos mais relevantes ajuda a reduzir a dimensionalidade dos dados sem afetar
    o desempenho, ou até mesmo melhorá-lo, para que se possa obter melhores resultados
    quando utilizado na classicação de dados. Os métodos de seleção de características existentes
    selecionam os melhores atributos para uma base de dados como um todo, sem levar
    em consideração as particularidades de cada instância. A Seleção de atributos baseada
    em algoritmos de agrupamento, método proposto deste trabalho, seleciona os atributos
    mais relevantes para cada grupo de instâncias, utilizando algoritmos de agrupamento
    para agrupá-las de acordo com as suas semelhanças. Este trabalho efetua uma análise
    experimental de diferentes técnicas de agrupamento aplicadas a essa nova abordagem de
    seleção de atributos. Para isso, são utilizados os algoritmos de agrupamento k-Médias,
    DBscan e Expectation-Maximization(EM) como métodos de seleção. São efetuadas aná-
    lises de desempenho e estatísticas para vericar qual desses algoritmos de agrupamento
    melhor se adequa a essa nova Seleção de Atributos. Assim, a contribuição deste trabalho é
    apresentar uma nova abordagem, através de uma versão Semidinâmica e outra Dinâmica,
    para seleção de atributos baseada em algoritmos de agrupamento e determinar qual dos
    métodos de agrupamento realiza uma melhor seleção e obtém um melhor desempenho na
    construção de classicadores mais acurados.


  • Mostrar Abstract
  • With the increase of the size on the data sets used in classication systems, selecting
    the most relevant attribute has become one of the main tasks in pre-processing phase.
    In a dataset, it is expected that all attributes are relevant. However, this is not always
    veried. Selecting a set of attributes of more relevance aids decreasing the size of the data
    without aecting the performance, or even increase it, this way achieving better results
    when used in the data classication. The existing features selection methods elect the
    best attributes in the data base as a whole, without considering the particularities of
    each instance. The Unsupervised-based Feature Selection, proposed method, selects the
    relevant attributes for each instance individually, using clustering algorithms to group
    them accordingly with their similarities. This work performs an experimental analysis
    of dierent clustering techniques applied to this new feature selection approach. The
    clustering algorithms k-Means, DBSCAN and Expectation-Maximization (EM) were used
    as selection method. Analyzes are performed to verify which of these clustering algorithms
    best ts to this new Feature Selection approach. Thus, the contribution of this study is to
    present a new approach for attribute selection, through a Semidynamic and a Dynamic
    version, and determine which of the clustering methods performs better selection and get
    a better performance in the construction of more accurate classifiers.

3
  • adorilson bezerra de araujo
  • Estudo Empírico de Análise da Compatibilidade de Aplicações Android com Diferentes Versões da API da Plataforma

  • Orientador : UIRA KULESZA
  • MEMBROS DA BANCA :
  • UIRA KULESZA
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • RODRIGO BONIFACIO DE ALMEIDA
  • Data: 14/02/2017

  • Mostrar Resumo
  • A plataforma Android é atualmente a mais popular para o desenvolvimento de aplicações móveis, ocupando mais de 80% do mercado de sistemas operacionais para dispositivos móveis, criando uma demanda por customizações de aplicações para lidar com diferentes dispositivos, tais como, tamanho de tela, poder de processamento e memória disponível, idiomas e necessidades específicas dos usuários. Já foram disponibilizadas 23 novas versões da plataforma Android desde o seu lançamento. De forma a permitir a execução com sucesso das aplicações em diferentes dispositivos, é fundamental oferecer suporte à múltiplas versões da API (Application Programming Interface).

    Esta dissertação de mestrado tem como objetivo principal: analisar, caracterizar e comparar técnicas utilizadas por aplicações Android para oferecer suporte a múltiplas versões da API. Em especial, o trabalho busca: (i) identificar na literatura quais as técnicas indicadas para suporte à múltiplas versões da API Android; (ii) analisar aplicações reais para quantificar o uso dessas técnicas indicadas; e (iii) comparar as características e consequências do uso de tais técnicas. Um estudo empírico foi conduzido para atingir tal objetivo, no qual foram analisadas 25 aplicações Android populares. Os resultados do estudo mostram que existem três técnicas para prover suporte a múltiplas versões da API: i) pacote de compatibilidade, variabilidades de granularidade grossa da API que envolvam um conjunto de classes; ii) re-implementação de recurso, para situações pontuais e granularidade grossa em nível de classe ou quando o recurso não está disponível em pacote de compatibilidade; e iii) uso explícito da nova API, variabilidades de granularidade fina da API que envolva a chamada de métodos específicos. Através da análise de 25 aplicações identificamos que pacote de compatibilidade foi utilizada por 23 aplicações, re-implementação de recurso por 14 e uso explícito da nova API por 22. A API de fragmentos contêm os elementos mais comuns dentre os lançados em versões superiores da plataforma que são usados pelas aplicações durante sua evolução, sendo referenciados por 68% delas. No geral, as aplicações poderiam aumentar o seu mercado em potencial com adaptações de, em média, 15 trechos de código, por outro lado, os desenvolvedores das aplicações têm se preocupado em evitar código-morto em função da API da plataforma. Na análise de 7 aplicações, 4 delas continham código-morto, mas os quais em geral não representam mais do que 0,1% do seu código total


  • Mostrar Abstract
  • Android platform is currently the most popular platform for the development of mobile applications, representing more than 80% of the operating systems market for mobile devices. This causes demands for application customizations to handle different devices such as screen size, processing power and available memory, languages and specific user needs. Twenty-three new versions of Android platform have been released since its first release. In order to enable the successful execution of applications on different devices, it is essential to support multiple versions of the Application Programming Interface (API).

    This dissertation aims mainly to analyze, characterize and compare techniques used by Android applications to support multiple versions of the API. In particular, the work seeks: (i) to identify the used techniques to support multiple versions of the Android API in the literature; (ii) to analyze real applications to quantify the use of these indicated techniques; and (iii) to compare the characteristics and consequences of using such techniques. An empirical study, in which 25 popular Android apps were analyzed, was conducted to achieve this goal. The results of the study show that there are three techniques to support multiple versions of the API: i) compatibility package, API gross granularity variabilities involving a set of classes; ii) re-implementation of resource, for specific situations and gross granularity at class level or when resource is not available in compatibility package; and iii) explicit use of the new API, fine granularity variabilities of the API that involves calling of specific methods. Through the analysis of 25 applications, we have identified that compatibility package was used by 23 applications, re-implementation of resource was used by 14 applications and the explicit use of the new API was used by 22 applications. The API fragments contains the most common elements among those released in higher versions of the platform that are used by applications during their evolution, and it is referenced by 68% of them. In general, applications could increase their potential market with adaptations of, on average, 15 code snippets. On the other hand, application developers have been worried about how avoiding dead code based on platform API. In the analysis of 7 applications, 4 of them contained dead code, but it did not represent more than 0.1% of total code

4
  • RANMSÉS EMANUEL MARTINS BASTOS
  • O Problema do Caixeiro Viajante com Passageiros e Lotação

  • Orientador : MARCO CESAR GOLDBARG
  • MEMBROS DA BANCA :
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • LUCÍDIO DOS ANJOS FORMIGA CABRAL
  • MARCO CESAR GOLDBARG
  • MATHEUS DA SILVA MENEZES
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • Data: 17/02/2017

  • Mostrar Resumo
  • O Problema do Caixeiro Viajante com Passageiros e Lotação é uma versão do PCV clássico onde o caixeiro é o motorista de um veículo que compartilha os custos de viagem com passageiros. Além de dividir os custos do percurso, o caixeiro pode se valer, também, dos descontos das high-occupancy vehicle lanes, que são faixas de trânsito que isentam veículos lotados do pagamento de pedágio. Esta dissertação aborda o estudo desse novo problema de otimização combinatória, compreendendo desde a correlação que o mesmo possui com outros problemas amplamente já abordados na literatura, por meio de uma revisão de trabalhos relacionados, até a concepção de instâncias artificiais para servirem como referenciais de comparação para os algoritmos experimentais desenvolvidos para sua solução.


  • Mostrar Abstract
  • The Traveling Salesman with Passengers and High Occupancy Problem is a version of the classic TSP where the salesman is the driver of a vehicle who shares travels’ expenses with passengers. Besides shared expenses, the driver also benefits from discounts of the high-occupancy vehicle lanes, i.e. traffic lanes in which high occupancy vehicles are exempted from tolls. This  paper presents a succinct mathematical model for this problem and an algorithm based on Simulated Annealing and Variable Neighborhood Search metaheuristics. The results of the heuristic algorithm are compared with the optimal solutions obtained by an exact algorithm.This work addresses the study of this novel combinatorial optimization problem, going from the relationship it draws with other ones widely covered by the literature, by the means of a revision of related work, until the conception of artificial test cases to fulfill the purpose of serving as comparison subjects to the experimental algorithms developed to solve it.

5
  • RAIMUNDO LEANDRO ANDRADE MARQUES
  •  Algoritmo Evolucionário de Múltiplas Populações Híbridas Aplicado ao Problema da Árvore Geradora Mínima com Restrição de Grau Multiobjetiva

     

  • Orientador : MARCO CESAR GOLDBARG
  • MEMBROS DA BANCA :
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • LUCÍDIO DOS ANJOS FORMIGA CABRAL
  • MARCO CESAR GOLDBARG
  • MATHEUS DA SILVA MENEZES
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • Data: 17/02/2017

  • Mostrar Resumo
  • O problema da árvore geradora mínima com restrição de grau multiobjetiva vem ganhando nos últimos anos, a atenção dos pesquisadores da área de otimização combinatória, em grande parte por sua ampla aplicação em problemas práticos relacionados à modelagem de redes. Esse problema é considerado NP-difícil, ainda em sua versão mono-objetiva, para um grau de restrição de pelo menos . Esse trabalho propõe a resolução do problema através de um algoritmo evolucionário chamado MMPEA. Essa abordagem utiliza-se de arquivos externos compartilhados e diferentes técnicas de otimização multiobjectivo executadas paralelamente, para uma melhor cobertura do espaço de busca. As técnicas escolhidas para implementação do MMPEA foram o MPAES, o NSGA2, e o SPEA2, as quais também foram utilizadas para comparação de desempenho computacional. Foram realizados 5040 testes ao todo, incluindo instâncias de diferentes tipos, com tamanhos entre 50 e 1000 vértices. Devido à natureza multiobjetiva do problema, os resultados dos experimentos são expressos através dos indicadores de qualidade hipervolume e épsilon binário, e avaliados quanto a sua significância através do teste estatístico de Mann-Whitney.


  • Mostrar Abstract
  • In recent years, the Multiobjective Degree Constrained Minimum Spanning Tree Problem, has taken the attention of combinatorial optimization researchers, especially due to its wide usability in practical network modeling design problems. This is a NP-hard problem, even in its mono-objective version for a degree of at least . The new algorithm proposed here called MMPEA, uses shared external archives and different multiobjective optimization techniques in a parallel execution to a better survey of the search space. This MMPEA version adopts the MPAES, NSGA2 and SPEA2 algorithms in its implementation which also are used in the comparison tests. A total of 5040 empirical tests are presented here, including different graph generators, and instances of size 50 up to 1000 vertices.  For a matter of multi-objective trait, the results for these experiments are presented by means of hypervolume and -binary indicators. The significance of computational experiments is evaluated by the Mann-Whitney statistical test.

6
  • TAIZA RABELLO MONTENEGRO
  • ExceptionPolicyExpert: Uma Ferramenta para Auxiliar no Desenvolvimento do Tratamento de Exceções 

  • Orientador : ROBERTA DE SOUZA COELHO
  • MEMBROS DA BANCA :
  • ROBERTA DE SOUZA COELHO
  • FERNANDO MARQUES FIGUEIRA FILHO
  • EIJI ADACHI MEDEIROS BARBOSA
  • FERNANDO JOSÉ CASTOR DE LIMA FILHO
  • Data: 20/02/2017

  • Mostrar Resumo
  • Na medida em que aumenta a dependência da sociedade com os sistemas de software, aumenta também a demanda pela robustez destes sistemas. O tratamento de exceções é uma das técnicas mais utilizadas para a construção de sistemas de software robustos. A política de tratamento de exceções é o conjunto de regras que define como as exceções devem ser manuseadas. Porém, na maioria dos casos, essa política não está definida de forma explícita, sendo um desafio para o desenvolvedor criar o código de tratamento de exceções. Este trabalho propõe uma ferramenta em formato de plug-in do Eclipse, denominada ExceptionPolicyExpert, que tem o objetivo de orientar o desenvolvedor na implementação desse tipo de código de forma a atender uma política previamente definida. Esta ferramenta analisa o código fonte e verifica se há alguma violação à política de tratamento de exceções, alertando o desenvolvedor para não conformidade, caso exista. Para auxiliar o levantamento dos requisitos da ferramenta, foi realizado um estudo qualitativo com desenvolvedores, utilizando técnicas de Grounded Theory, que buscou entender quais eram os principais desafios deles no momento da implementação do código de tratamento de exceções. O estudo mostrou que a maioria deles não recebem orientações a respeito da política de tratamento de exceções e nem tem acesso à política de tratamento de exceções a ser seguida. Consequentemente, muitas vezes lidam com esse código de forma indevida. Dessa forma, foi proposta uma ferramenta que visa trazer informações sobre a política de tratamento de exceções para a IDE, de forma que auxilie o desenvolvedor na implementação do código excepcional sem violar a política. A avaliação da ferramenta mostrou que ela auxilia o desenvolvedor a tomar decisões no momento da implementação do código de tratamento de exceções.


  • Mostrar Abstract
  • As our society becomes more and more dependent of software systems the demand robustness requirements increases. The exception handling mechanism is one of the most used techniques to enable the development of robust software systems develop. The exception handling policy comprises the set of rules that specify how exceptions should be thrown and handled inside a system. But usually the policy is not explicitly defined. As a consequence, it becomes a challenge for developers to create the exception handling code according to it. This work proposes an Eclipse plug-in, called ExceptionPolicyExpert, to guide the developer on how to implement this kind of code by checking policy violations and providing recommendations to developers concerning how to exceptions should be handled and signaled. In order to support the creation of such tool, we performed a qualitative study, using Grounded Theory techniques, to understand which are the main challenges that the developers have during the implementation of the exception handling code. This study showed that most of the developers did not receive any instructions regarding the exception handling policy and they often handle exceptions in a wrong way. Therefore, the proposed tool aims to provide information to developer regarding the exception handling policy integrated to the IDE - helping him/her to develop exception handling code and preventing policy violations. The tool evaluation showed that the tool helps the developer to make decisions when implementing the exception handling code.

7
  • NARALLYNNE MACIEL DE ARAÚJO
  • Dados Abertos do Governo Brasileiro: Entendendo as Perspectivas de Fornecedores de Dados e Desenvolvedores de Aplicações ao Cidadão

  • Orientador : FERNANDO MARQUES FIGUEIRA FILHO
  • MEMBROS DA BANCA :
  • FERNANDO MARQUES FIGUEIRA FILHO
  • NELIO ALESSANDRO AZEVEDO CACHO
  • NAZARENO ANDRADE
  • Data: 21/02/2017

  • Mostrar Resumo
  • Dados Abertos Governamentais (DAGs) são vistos como uma forma de promover transparência, bem como de fornecer informações para a população por meio da abertura de dados relacionados a diversos setores governamentais. Cidadãos, ao fazerem uso de aplicações desenvolvidas com esse tipo de dado, conseguem obter o conhecimento sobre determinada esfera pública; o governo, por sua vez, é capaz de promover a transparência necessária e proporcionar melhorias dos seus órgãos por meio da interação com cidadãos que utilizam tais aplicações. No entanto, a criação e o sucesso de projetos que usam DAGs certamente depende de desenvolvedores capazes de extrair, processar e analisar essas informações, como também da qualidade com que esses dados são disponibilizados pelos seus fornecedores. Esta pesquisa foi dividida em duas fases: a primeira fase, procurou investigar a perspectiva dos desenvolvedores que utilizam DAGs brasileiros para o desenvolvimento de aplicações que objetivam promover maior transparência aos cidadãos; na segunda fase, foram investigadas as perspectivas de cidadãos responsáveis por publicar esses dados em portais de dados abertos, i.e. fornecedores de DAGs. Por meio de vinte e quatro entrevistas semiestruturadas com doze desenvolvedores e doze fornecedores, este trabalho reporta o que os motivam a trabalhar com DAGs, bem como as dificuldades enfrentadas por eles nesse processo. Os resultados indicam que ambos atores buscam promover transparência para a população, mas esbarram na baixa qualidade dos DAGs, barreiras culturais, dentre outroes problemas. Neste trabalho, tais problemas são apresentados e caracterizados qualitativamente. Também são apresentadas recomendações, de acordo com as perspectivas de desenvolvedores e fornecedores de dados, com o objetivo de trazer benefícios ao ecossistema de DAGs brasileiro e aos cidadãos.


  • Mostrar Abstract
  • Open Government Data (OGD) are seen as a way to promote transparency, as well as providing information to the population by opening data related to various government sectors. Citizens, by using applications developed with this type of data, gain knowledge about a certain public sphere; governments, in turn, are able to promote transparency and improvements through the interaction with citizens who use such applications. However, the creation and success of projects that use OGD depends on developers who are able to extract, process and analyze this information, as well as on the quality of data made available by their suppliers. This research was conducted in two phases: the first phase sought to investigate the perspective of the developers who use Brazilian OGD for the development of applications that aim to promote greater transparency to citizens; in the second phase, we investigate the perspectives of citizens responsible for publishing OGD in portals, i.e. OGD providers. Through twenty-four semi-structured interviews with twelve developers and twelve suppliers, this work reports what motivates them to work with OGD, as well as the barriers they face in this process. Our findings indicate that both actors seek to promote transparency for the population, however they struggle with the poor quality of OGD, cultural barriers, among other issues. In this work, we present and qualitatively characterize these issues. We also provide recommendations, according to the perspectives of developers and data providers, with the aim of bringing benefits to the Brazilian OGD ecosystem and citizens.

8
  • JORGE PEREIRA DA SILVA
  • EcoCIT: Uma Plataforma Escalável para Desenvolvimento de Aplicações de IoT

     

     

  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • FLAVIA COIMBRA DELICATO
  • NELIO ALESSANDRO AZEVEDO CACHO
  • PAULO DE FIGUEIREDO PIRES
  • THAIS VASCONCELOS BATISTA
  • Data: 24/03/2017

  • Mostrar Resumo
  • O paradigma de Internet das Coisas (do inglês, Internet of Things –IoT)  abrange uma infraestrutura de hardware e software que conecta dispositivos físicos, denominados como coisas, ao mundo digital. Estima-se que em 2020 existirão cerca de 100 bilhões de dispositivos de IoT conectados cujos dados e serviços servirão como base para a construção de uma miríade de aplicações. No entanto, desenvolver aplicações no contexto de IoT não é uma tarefa trivial. Dada a grande quantidade e variedade de dispositivos envolvidos, tais aplicações precisam ser construídas atendendo requisitos de escalabilidade a fim de suportar um grande número de dispositivos conectados, além de armazenar e processar a enorme quantidade de dados por eles produzida. Além disso, aplicações nesse contexto também precisam lidar com uma diversidade de protocolos distintos. Nesse contexto, plataformas de middleware tem surgido como soluções promissoras para facilitar o desenvolvimento de aplicações. Tais plataformas oferecem interfaces padronizadas para acesso aos dispositivos, abstraindo para os desenvolvedores detalhes de comunicação via rede, protocolos e formatos de dados utilizados pelos diversos dispositivos. Nessa perspectiva, o presente trabalho apresenta a plataforma EcoCIT, uma plataforma de middleware escalável que provê suporte para a integração de dispositivos de IoT à internet, bem como ao desenvolvimento e execução de aplicações de IoT com requisitos de escalabilidade através do uso de tecnologias escaláveis e serviços computacionais providos sob demanda por plataformas de computação em nuvem.


  • Mostrar Abstract
  • The Internet of Things (IoT) paradigm encompasses a hardware and software infrastructure that connects physical devices, known as things, to the digital world. It is estimated that in 2020 there will be nearly 100 billion of connected IoT devices whose data and services will be used for building a myriad of applications. However, developing applications in the IoT context is not a trivial task. Given the large number and variety of devices involved, these applications need to be built and executed in a scalable way to support a large number of connected devices as well as to store and process the huge amount of data they produce. Additionally, applications in this context also need to deal with several different protocols. In this context, middleware platforms have emerged as promising solutions to facilitate application development. These platforms offer standardized interfaces for access to devices, abstracting the developers of details of communication via network, protocols and data formats used by various devices. In this perspective, this work presents the EcoCIT platform, a scalable middleware platform that provides support for the integration of IoT devices to the Internet, as well as the development and execution of IoT applications with scalability requirements through the use of scalable technologies and on-demand computing services provided by cloud computing platforms.

9
  • LUCAS TOMÉ AVELINO CÂMARA
  • Acquisition and analysis of the first mouse dynamics biometrics database for user verification in the online collaborative game League of Legends

  • Orientador : MARJORY CRISTIANY DA COSTA ABREU
  • MEMBROS DA BANCA :
  • BRUNO MOTTA DE CARVALHO
  • CARLOS NASCIMENTO SILLA JÚNIOR
  • CHARLES ANDRYE GALVAO MADEIRA
  • MARJORY CRISTIANY DA COSTA ABREU
  • Data: 26/06/2017

  • Mostrar Resumo
  • Digital games are very popular around the world. Some of them are really competitive
    and even considered sports on some countries. League of Legends is the most played game
    today with millions of players, and even world championships are transmitted on the
    internet for the entire world. Account sharing is one of the biggest problem on this game,
    because more skilled players can play on someone else account and help to improve their
    skill level account, causing unbalanced matches on the game. Account sharing is harder
    to solve than account stealing, because the owner wants to allow other person to access
    their account. A mouse dynamics system can be a solution to detect account sharing,
    since the mouse is a lot used by players during a match. Because of this, to investigate the
    efficiency of mouse dynamics on account sharing detection on games is a really interesting
    research, but there is no public database of mouse dynamics for online games or similar
    situations. So a new database was collected and presented in this work. Some statistic
    analysis and classification experiments shown that mouse dynamics features can be used
    for identification of League of Legends players on a smaller context, with a correctness of
    93.2203%.

  • Mostrar Abstract
  • Digital games are very popular around the world. Some of them are really competitive
    and even considered sports on some countries. League of Legends is the most played game
    today with millions of players, and even world championships are transmitted on the
    internet for the entire world. Account sharing is one of the biggest problem on this game,
    because more skilled players can play on someone else account and help to improve their
    skill level account, causing unbalanced matches on the game. Account sharing is harder
    to solve than account stealing, because the owner wants to allow other person to access
    their account. A mouse dynamics system can be a solution to detect account sharing,
    since the mouse is a lot used by players during a match. Because of this, to investigate the
    efficiency of mouse dynamics on account sharing detection on games is a really interesting
    research, but there is no public database of mouse dynamics for online games or similar
    situations. So a new database was collected and presented in this work. Some statistic
    analysis and classification experiments shown that mouse dynamics features can be used
    for identification of League of Legends players on a smaller context, with a correctness of
    93.2203%.
10
  • ISAAC NEWTON DA SILVA BESERRA
  • Acquisition and analysis of the first keystroke dynamics biometrics database for user verification in the online collaborative game League of Legends.

  • Orientador : MARJORY CRISTIANY DA COSTA ABREU
  • MEMBROS DA BANCA :
  • BRUNO MOTTA DE CARVALHO
  • CARLOS NASCIMENTO SILLA JÚNIOR
  • CHARLES ANDRYE GALVAO MADEIRA
  • MARJORY CRISTIANY DA COSTA ABREU
  • Data: 26/06/2017

  • Mostrar Resumo
  • The popularity of computer games has grown exponentially in the last few years,
    reaching a point where they stopped being just a child's play and became actual sports.
    Being so, many players invest lots of time and money to improve and become the best. As
    a result, many online games companies protect users' accounts in a variety of ways, such
    as secondary passwords, e-mail conrmation when accessed on other devices and mobile
    text messages. However, none of these techniques apply when it comes to account sharing.
    In the competitive scenario, players are divided by their level of skill, which is obtained
    from their achievements and victories; thus, when a player shares his/her account, s/he is
    classied in a level which does not correspond to his/her actual skill, causing an imbalance
    in matches. The game League of Legends greatly suers with this practice, which is
    popularly known as Elo Job, which is forbidden by the game company itself and, when
    discovered, causes the player to be permanently banned from the game. As the game
    uses the keyboard keystroke dynamics for most of its actions, a continuous verication
    during the game would be ideal, as it could potentially identify whether the player is
    really the owner of the account. As a result, the system could penalise players who share
    their accounts. For this work, a keystroke-based biometrics database was populated with
    data collected from real players. The data were analyzed and tested with several classiers,
    obtaining a hit rate of 65.90%, which is not enough to make a good identication. However,
    the combination of the features of the keystroke dynamics with the mouse dynamics
    showed much better results, reaching a promising hit rate of 90.0%.


  • Mostrar Abstract
  • The popularity of computer games has grown exponentially in the last few years,
    reaching a point where they stopped being just a child's play and became actual sports.
    Being so, many players invest lots of time and money to improve and become the best. As
    a result, many online games companies protect users' accounts in a variety of ways, such
    as secondary passwords, e-mail conrmation when accessed on other devices and mobile
    text messages. However, none of these techniques apply when it comes to account sharing.
    In the competitive scenario, players are divided by their level of skill, which is obtained
    from their achievements and victories; thus, when a player shares his/her account, s/he is
    classied in a level which does not correspond to his/her actual skill, causing an imbalance
    in matches. The game League of Legends greatly suers with this practice, which is
    popularly known as Elo Job, which is forbidden by the game company itself and, when
    discovered, causes the player to be permanently banned from the game. As the game
    uses the keyboard keystroke dynamics for most of its actions, a continuous verication
    during the game would be ideal, as it could potentially identify whether the player is
    really the owner of the account. As a result, the system could penalise players who share
    their accounts. For this work, a keystroke-based biometrics database was populated with
    data collected from real players. The data were analyzed and tested with several classiers,
    obtaining a hit rate of 65.90%, which is not enough to make a good identication. However,
    the combination of the features of the keystroke dynamics with the mouse dynamics
    showed much better results, reaching a promising hit rate of 90.0%.

11
  • TERESA DO CARMO BARRÊTO FERNANDES
  • ExMinerSOF: Minerando InformaçoÞes Excepcionais do StackOverflow 

  • Orientador : ROBERTA DE SOUZA COELHO
  • MEMBROS DA BANCA :
  • FRANCISCO DANTAS DE MEDEIROS NETO
  • LYRENE FERNANDES DA SILVA
  • ROBERTA DE SOUZA COELHO
  • UIRA KULESZA
  • Data: 30/06/2017

  • Mostrar Resumo
  • Exceções não capturadas não são cenários excepcionais nas aplicações Java atuais. Eles são, na verdade, uma das principais causas de falha das aplicações Java - que podem originar-se de erros de programação (e.g., acesso a referências nulas); falhas no hardware ou em APIs utilizadas.
    Essas exceções não capturadas (do inglês: uncaught) resultam em stack traces que são frequentemente usados pelos desenvolvedores como fonte de informações para a depuração. Atualmente, essa informação é frequentemente usada pelos desenvolvedores em mecanismos de busca ou sites de perguntas e respostas (do inglês: Question and Answer - Q&A) para tentar compreender melhor a causa do crash e assim poder resolvê-lo.
    Este estudo fez a mineração de stack traces incluídas nas perguntas e respostas do StackOverflow (SOF). O objetivo deste estudo foi: (i) identificar características comuns das stack traces e (ii) investigar como tais informações podem ser usadas para evitar exceções não capturadas durante o desenvolvimento de software.
    Neste estudo, 121.253 exceções foram extraídas e analisadas em combinação com inspeções de postagens do SOF. Este estudo fornece insights sobre como as informações incorporadas nas stack traces podem ser usadas para descobrir exceções potencialmente acionadas por métodos de APIs, mas que não possuem documentação.
    Também é proposta a ferramenta ExMinerSOF, que alerta o desenvolvedor sobre as exceções que podem ser potencialmente sinalizadas por um método de API, mas que não fazem parte da documentação. Essas informações são descobertas aplicando uma estratégia de mineração apresentada neste trabalho. Ao fazê-lo, a ferramenta permite que o desenvolvedor evite falhas com base em falhas relatadas por outros desenvolvedores.

     

  • Mostrar Abstract
  • Uncaught exceptions are not an exceptional scenario in current Java applications. They are actually one of the main causes of applications crashes, which can originate from programming errors on the application itself (null pointer dereferences); faults in underlying hardware or re-used APIs.
    Such uncaught exceptions result in exception stack traces that are often used by developers as a source of information for debugging. Currently, this information is ofttimes used by developers on search engines or Question and Answer sites while the developer tries to: better understand the cause of the crash and solve it.
    This study mined the exception stack traces embedded on StackOverflow (SOF) questions and answers. The goal of this work was to two-fold: to identify common characteristics of such stack traces and to investigate how such information can be used to prevent uncaught exceptions during software development. Overall 121.253 exception stack traces were extracted and analyzed in combination with Q&A inspections. This work provides insights on how the information embedded on exception stack traces can used to discover exceptions that can be potentially thrown by API methods but are not part of the API documentation.
    Hence, this study proposes ExMinerSOF tool, which alerts the developer about the exceptions that can be potentially signaled by an API method but are not part of the API documentation - and was discovered by applying a mining strategy in SOF repository. Doing so, the tool enable the developer to prevent faults based on failures reported by the crowd.

12
  • EMERSON BEZERRA DE CARVALHO
  • Análise Experimental de Variações da Heurística de Lin e Kernighan para o Problema do Caixeiro Viajante Multiobjetivo

  • Orientador : ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MEMBROS DA BANCA :
  • CAROLINA DE PAULA ALMEIDA
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MARCO CESAR GOLDBARG
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • Data: 24/07/2017

  • Mostrar Resumo
  • A heurística de Lin e Kernighan (LK) é um dos métodos mais eficientes para o Problema do Caixeiro Viajante (PCV). Devido a este fato, diferentes implementações para a LK foram propostas na literatura e esta heurística é também usada como parte de diversos algoritmos meta-heurísticos. A heurística LK tem sido utilizada no contexto do PCV multiobjetivo (PCVM) conforme proposta originalmente por seus autores, isto é, com o foco mono-objetivo. Este trabalho investiga variações da heurística LK no contexto multiobjetivo. É investigado o potencial de extensões da LK combinadas com outras técnicas meta-heurísticas. Resultados de um experimento computacional para instâncias do PCVM com 2, 3 e 4 objetivos são reportados.


  • Mostrar Abstract
  • The Lin and Kernighan’s heuristic (LK) is one of the most effective methods for the Traveling Salesman Problem (TSP). Due to this fact, different implementations for the LK were proposed in literature and this heuristic is also used as part of various meta-heuristic algorithms. LK has been used in the context of the multi-objective TSP (MTSP) as originally proposed by its authors, i.e., with a single objective focus. This study investigates variants of the LK heuristic in the multi-objective context. We investigate the potential of LK extensions combined with other metaheuristic techniques. Results of a computational
    experimental are reported for MTSP instances with 2, 3 and 4 objectives.

13
  • NELSON ION DE OLIVEIRA
  • Um Ambiente Interativo de Apoio ao Ensino de Lógica de Programação nos Cursos Técnicos (EaD) do Instituto Metrópole Digital/UFRN.

  • Orientador : MARCEL VINICIUS MEDEIROS OLIVEIRA
  • MEMBROS DA BANCA :
  • ALEX SANDRO GOMES
  • JORGE TARCISIO DA ROCHA FALCAO
  • MARCEL VINICIUS MEDEIROS OLIVEIRA
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • Data: 24/07/2017

  • Mostrar Resumo
  • O principal objetivo deste trabalho é apresentar uma proposta de intervenção no material
    didático da disciplina de Lógica de Programação dos cursos técnicos ofertados na modalidade
    a distância, do Instituto Metrópole Digital da Universidade Federal do Rio Grande do
    Norte. Essa intervenção foi proposta como resultado de uma pesquisa mista-exploratória
    online com centenas de alunos dos referidos cursos ofertados. Para a implementação da
    proposta, realizou-se análise frequência descritiva sobre dados quantitativos acerca do desempenho
    acadêmico de 2.500 discentes dos primeiros semestres letivos dos anos de 2015 e
    2016. Foram aplicados questionários online com mais de 600 alunos para identificar o perfil
    desses estudantes. Também realizaram-se entrevistas semiestruturadas com efetivo de 37
    alunos, com critérios de score e idade para a definição dos grupos de entrevista. Com base
    nos dados obtidos e analisados na pesquisa, implementou-se uma proposta de intervenção
    inserindo um recurso no material didático utilizado na disciplina de Lógica de Programação
    para o referido curso. Essa intervenção adiciona o recurso que permite a realização,
    pelo aluno, de exercícios de programação utilizando uma linguagem de programação de
    alto nível aliada ao recurso de feedback automatizado.


  • Mostrar Abstract
  • The main objective of this work is to present a proposal for intervention in the didactic
    material of the discipline of Programming Logic of the technical courses offered at distance
    modality, from the Digital Metropolis Institute of the Federal University of Rio Grande
    do Norte. This intervention was proposed as a result of an mixed-exploratory research
    with hundreds of students of the offered courses. For the implementation of the proposal,
    a descriptive frequency analysis was performed on quantitative data about the academic
    performance of 2,500 students from the first semesters of the years 2015 and 2016. Online
    questionnaires were applied with more than 600 students to identify the profile of these
    students. We also conducted semi-structured interviews with 37 students, with score and
    age criteria to define the groups interview. Based on the data obtained and analyzed in
    the research, an proposal intervention was implemented by inserting a resource in the
    didactic material used in the Programming Logic discipline that course. This intervention
    adds the feature that allows the student to perform programming exercises using a highlevel
    programming language coupled with the automated feedback feature.

14
  • LEO MOREIRA SILVA
  • PerfMiner Visualizer: Uma Ferramenta para Análise da Evolução do Atributo de Qualidade de Desempenho em Sistemas de Software
  • Orientador : UIRA KULESZA
  • MEMBROS DA BANCA :
  • Felipe Alves Pereira Pinto
  • LYRENE FERNANDES DA SILVA
  • RENATO LIMA NOVAIS
  • UIRA KULESZA
  • Data: 26/07/2017

  • Mostrar Resumo
  • Durante o processo de manutenção e evolução de um sistema de software, o mesmo pode sofrer diversas modificações, as quais podem trazer consequências negativas, diminuindo a sua qualidade e aumentando sua complexidade. Essa deterioração também pode afetar o desempenho dos sistemas ao longo do tempo. Assim, sem o devido acompanhamento, o atributo de qualidade de desempenho pode deixar de ser atendido adequadamente. A área de visualização de software propõe o uso de técnicas cujo objetivo é melhorar o entendimento do software e tornar mais produtivo o seu processo de desenvolvimento. Neste contexto, este trabalho apresenta uma ferramenta de visualização de desvios de desem- penho de evoluções subsequentes de um sistema de software com o intuito de auxiliar a análise da evolução do desempenho entre versões de um software. A ferramenta permite, através de visualizações de grafos de chamadas e sumarização de cenários, que desenvolvedores e arquitetos possam identificar cenários e métodos que tiveram variações no seu desempenho, incluindo as potenciais causas desses desvios através dos respectivos commits. O trabalho também apresenta um estudo empírico que avalia o uso da ferramenta aplicando-a em 10 versões de evolução de 2 sistemas open-source de domínios diferentes e submetendo questionários online para obter feedback dos seus desenvolvedores e arquitetos. Os resultados do estudo conduzido trazem evidências preliminares da eficácia das visualizações providas pela ferramenta em comparação com dados tabulares. Além disso, o algoritmo de supressão de nós da visualização do grafo de chamadas foi capaz de reduzir entre 73,77% e 99,83% a quantidade de nós a serem exibidos para o usuário, permitindo que ele possa identificar mais facilmente as possíveis causas das variações.

  • Mostrar Abstract
  • During the maintenance and evolution process of a software system, it can undergo several modifications, which can have negative consequences, reducing its quality and increasing its complexity. This deterioration can also affect system performance over time. Thus, without due monitoring, the performance quality attribute may no longer be adequately met. The software visualization area proposes the use of techniques whose objective is to improve the understanding of the software and to make its development process more productive. In this context, this work presents a tool to visualize performance deviations from subsequent evolutions of a software system to assist the analysis of performance evolution between software versions. The tool allows, through call graph and scenario summarization visualizations, that developers and architects can identify scenarios and methods that have had variations in their performance, including the potential causes of such deviations through commits. This work also presents an empirical study that evaluates the use of the tool by applying it to 10 evolutionary versions of 2 open-source systems from different domains and by submitting online questionnaires to obtain feedback from its developers and architects. The results of the conducted study bring preliminary evidence of the effectiveness of visualizations provided by the tool compared to tabular data. In addition, the nodes suppression algorithm of the call graph visualization was able to reduce between 73.77% and 99.83% the number of nodes to be displayed to the user, allowing him to be able to identify more easily the possible causes of variations.

15
  • HUGO HENRIQUE DE OLIVEIRA MESQUITA
  • UMA ABORDAGEM PARA O DESENVOLVIMENTO DE JOGOS DIGITAIS EDUCATIVOS NO ENSINO BÁSICO

  • Orientador : EDUARDO HENRIQUE DA SILVA ARANHA
  • MEMBROS DA BANCA :
  • ALBERTO SIGNORETTI
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • THIAGO REIS DA SILVA
  • UIRA KULESZA
  • Data: 28/07/2017

  • Mostrar Resumo
  • Os jogos educativos digitais são apontados como uma boa ferramenta quando utilizados em sala de aula, pois insere os alunos em um ambiente lúdico de aprendizagem, de maneira que, proporciona o desenvolvimento de diversas habilidades. No entanto, nem sempre é possível para o professor conseguir jogos que se adequam ao perfil educacional que deseja, tornando muitas vezes inviável a sua utilização no contexto escolar. Com base neste contexto, este trabalho apresenta o design e implementação de uma plataforma que visa proporcionar aos professores e alunos a possibilidade de criar jogos de uma maneira simples e intuitiva, e que permita aos professores adequar o conteúdo dos jogos aos seus objetivos pedagógicos. Os resultados desta pesquisa contribuem para as inovações futuras, nos campos teórico e prático, na definição de uma abordagem baseada em componentes e desenvolvimento de uma plataforma ambos promovendo o desenvolvimento de jogos digitais educativos com diferentes objetivos pedagógicos. Diante dos resultados apresentados, considera-se que a plataforma proposta em conjunto com a sua abordagem motivadora, apresentou resultados potencialmente eficazes.


  • Mostrar Abstract
  • Digital educational games are pointed out as a good tool when used in the classroom, as it inserts the students in a playful learning environment, in a way that provides the development of several skills. However, it is not always possible for the teacher to find games that fit the educational needs that he or she wishes, making it often unfeasible for use in the school context. Based on this scenario, this work presents the design and implementation of a platform that aims to provide teachers and students with the possibility of creating games in a simple and intuitive way, and that allows teachers to adapt the content of the games to their pedagogical objectives. The results of this research contribute to future innovations in the theoretical and practical fields, in the definition of a component-based approach and the development of a platform, promoting the development of digital educational games with different pedagogical objectives. Results suggest that the proposed platform together with its motivational approach have effective results.

16
  • FÁBIO FERNANDES PENHA
  • SMiLe: Uma Notação Textual Modular para Modelos de Requisitos IStar

  • Orientador : MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • MEMBROS DA BANCA :
  • FERNANDA MARIA RIBEIRO DE ALENCAR
  • LYRENE FERNANDES DA SILVA
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • Data: 28/07/2017

  • Mostrar Resumo
  • Sistemas computacionais estão presentes em todos os lugares, assumindo um papel determinante nas mais diversas atividades e áreas. Os ambientes cujos sistemas são necessários e concebidos, serão cada vez mais complexos, sociais e técnicos. Assim surge o Framework iStar como uma linguagem de modelagem usada para prospectar modelos tanto, de Dependência, como de Raciocínio Estratégicos (Strategic Dependency model e Strategic Rationale model). Estes modelos capturam e representam os motivos e as relações dos envolvidos no ambiente estudado. Esta abordagem vem sendo utilizada em diversas situações, tais como telecomunicações, controle de tráfego aéreo, agricultura e saúde. Apesar disso, o Framework vem encontrando dificuldade para uma ampla aceitação na indústria, sendo que alguns trabalhos apontam fraquezas do Framework iStar diante de sistemas complexos ou que envolve muitos atores. Neste contexto, o objetivo desta dissertação é apresentar e implementar uma notação textual que complemente os modelos gráficos do Framework iStar buscando lidar com alguns desafios relacionados ao uso dos Modelos Istar, tais como, modularidade e escalabilidade. 


  • Mostrar Abstract
  • Computational systems are present everywhere, assuming a determining role in the most diverse activities and areas. The environments, whose systems are needed and designed, will be increasingly complex, social and technical. Thus, the iStar Framework emerges as a modeling language used to prospect both Dependency and Strategic Dependency model and Strategic Rationale models. These models capture and represent the motives and relationships of those involved in the studied environment. This approach has been used in several situations, such as telecommunications, air traffic control, agriculture and health. Despite this, the Framework has been finding it difficult to be widely accepted in the industry, and some studies point out weaknesses of the iStar Framework in the face of complex systems or involving many actors. In this context, the objective of this dissertation is to present and implement a textual notation that complements the iStar Framework's graphical models in order to deal with some challenges related to the use of Istar Models, such as modularity and scalability.

17
  • JOÃO HELIS JUNIOR DE AZEVEDO BERNARDO
  • The Impact of Adopting Continuous Integration on the Delivery Time of Merged Pull Requests: An Empirical Study

  • Orientador : UIRA KULESZA
  • MEMBROS DA BANCA :
  • DANIEL ALENCAR DA COSTA
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • MARCELO DE ALMEIDA MAIA
  • ROBERTA DE SOUZA COELHO
  • UIRA KULESZA
  • Data: 31/07/2017

  • Mostrar Resumo
  • Continuous Integration (CI) is a software development practice that leads developers to integrate their work more frequently. Software projects have broadly adopted CI to ship new releases more frequently and to improve code integration. The adoption of CI is usually motivated by the allure of delivering new software content more quickly and frequently. However, there is little empirical evidence to support such claims. Over the last years, many available software projects from social coding environments such as GitHub have adopted the CI practice using CI facilities that are integrated into these environments (e.g., Travis-CI). In this dissertation, we empirically investigate the impact of adopting CI on the time-to-delivery of pull requests (PRs), through the analysis of 167,037 PRs of 90 GitHub projects that are implemented in 5 different programming languages. The results show that a median of 13.8% of merged pull requests have their delivery postponed by at least one release before adopting CI, while after adopting CI, a median of 24% of merged PRs have their delivery postponed to future releases. Contrary to what one might speculate, we find that PRs tend to wait longer to be delivered after the adoption of CI in the majority (53%) of the studied projects. The large increase of PR submissions after CI is a key reason as to why these projects deliver PRs more slowly after adopting CI. 77.8% of the projects increase the rate of PR submissions after adopting CI. To investigate the factors that are related to the time-to-delivery of merged PRs, we train linear and logistic regression models, which obtain sound median R-squares of 0.72-0.74, and good median AUC values of 0.85-0.90. A deeper analysis of our models suggests that, before and after the adoption of CI, the intensity of code contributions to a release may increase the delivery time due to a higher integration-load (regarding integrated commits) of the development team. Finally, we are able to accurately identify merged pull requests that have a prolonged delivery time. Our regression models obtained median AUC values of 0.92 to 0.97.


  • Mostrar Abstract
  • Integração Contínua (IC) é uma prática de desenvolvimento de software que leva os desenvolvedores a integrarem seu código-fonte mais frequentemente. Projetos de software têm adotado amplamente a IC com o intuito de melhorar a integração de código e lançar novas releases mais rapidamente para os seus usuários. A adoção da IC é usualmente motivada pela atração de entregar novas funcionalidades do software de forma mais rápida e frequente. Todavia, há poucas evidências empíricas para justificar tais alegações. Ao longo dos últimos anos, muitos projetos de software disponíveis em ambientes de codificação social, como o GitHub, tem adotado a prática da IC usando serviços que podem ser facilmente integrados nesses ambientes (por exemplo, Travis-CI). Esta dissertação investiga empiricamente o impacto da adoção da IC no tempo de entrega de pull requests (PRs), através da análise de 167.037 PRs de 90 projetos do GitHub que são implementados em 5 linguagens de programação diferentes. Os resultados mostram que em mediana 13,8% dos PRs tem sua entrega adiada por pelo menos uma release antes da adoção da IC, enquanto que após a adoção da IC, em mediana 24% dos PRs tem sua entrega adiada para futuras releases. Ao contrário do que se pode especular, observou-se que PRs tendem a esperar mais tempo para serem entregues após a adoção da IC na maioria (53%) dos projetos investigados. O grande aumento das submissões de PRs após a IC é uma razão fundamental para que projetos demorem mais tempo para entregar PRs depois da adoção da IC. 77,8% dos projetos aumentam a taxa de submissões de PRs após a adoção da IC. Com o propósito de investigar os fatores relacionados ao tempo de entrega de merged PRs, treinou-se modelos de regressão linear e logística, os quais obtiveram R-Quadrado mediano de 0.72-0.74 e bons valores medianos de AUC de 0.85-0.90. Análises mais profundas de nossos modelos sugerem que, antes e depois da adoção da IC, a intensidade das contribuições de código para uma release pode aumentar o tempo de entrega de PRs devido a uma maior carga de integração (em termos de commits integrados) da equipe de desenvolvimento. Finalmente, apresentamos heurísticas capazes de identificar com precisão os PRs que possuem um tempo de entrega prolongado. Nossos modelos de regressão obtiveram valores de AUC mediano de 0.92 a 0.97.

18
  • JEAN GLEISON DE SANTANA SILVA
  • Algoritmos de Solução para o Problema do Caixeiro Viajante com Passageiros e Quota

  • Orientador : MARCO CESAR GOLDBARG
  • MEMBROS DA BANCA :
  • MARCO CESAR GOLDBARG
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • MATHEUS DA SILVA MENEZES
  • Data: 31/07/2017

  • Mostrar Resumo
  • O Problema do Caixeiro Viajante com Passageiros e Quota pertence à classe de Problemas do Caixeiro Viajante com Quota. Neste problema, considera-se uma vantagem econômica quando o caixeiro, viajando em um veículo privado, embarcar passageiros que passam a dividir as despesas da viagem com ele. O modelo pode representar situações reais onde o motorista tem uma rota de visita de cidade predefinida, onde cada à cidade está associado um bônus, sendo demandada a coleta de um valor mínimo desses bônus, Na função objetivo leva-se em conta a possibilidade da redução dos custos do caixeiro embarcando pessoas em seu veículo. Um modelo matemático, seis algoritmos evolucionários e um heurístico são apresentados para o problema. O comportamento dos algoritmos propostos é analisado em um experimento computacional com 48 instâncias.

     

     


  • Mostrar Abstract
  • The Traveling Salesman Problem with Ridesharing and Quota belongs to the class of Quota Traveling Salesman problems. In this problem, it is considered the economic advantage achieved when the salesman, traveling in a private vehicle, gives ride to passengers who share travel expenses with him. The model can represent real situations where a driver programs a route to visit cities, each of which associated with a bonus, with the requirement of collecting a minimum sum of bonuses and taking into account the possibility of reducing costs due to people embarked in his vehicle. A math model, six evolutionary algorithms and one heuristic are presented for the problem addressed. The behavior of the proposed algorithms is analyzed on a computational experiment with 48 instances.

19
  • LUIZ FERNANDO VIRGINIO DA SILVA
  • Extraindo Dados de Tráfego a partir de Vídeos em Tempo Real

  • Orientador : BRUNO MOTTA DE CARVALHO
  • MEMBROS DA BANCA :
  • BRUNO MOTTA DE CARVALHO
  • ANNE MAGALY DE PAULA CANUTO
  • ALUISIO IGOR REGO FONTES
  • Data: 31/07/2017

  • Mostrar Resumo
  • Alguns dos maiores problemas nas grandes cidades estão relacionados com o trânsito em vias públicas. Problemas como congestionamentos e acidentes impactam diretamente de modo negativo na sociedade e são muitas vezes atribuídos à falta de planejamento urbano por parte dos governantes, à falta de políticas públicas e pesquisas que proporcionem uma solução, mesmo que de forma parcial, ao problema. Estas pesquisas dependem de dados que devem ser coletados in loco nas principais avenidas e ruas da cidade, trabalho este que precisaria de uma demanda grande de pessoal e que, por se tratar de algo realizado de forma manual, tende ao erro. Ao circular pelas principais cidades é comum vermos sistemas de CFTV sendo utilizados como principal meio de vigilância no trânsito. Desta forma, foi pensada então em uma solução capaz de coletar estes dados de forma automática, e em tempo real, utilizando imagens de vídeos oriundas destas câmeras e utilizá-los para subsidiar pesquisas, assim como detectar possíveis ações no trânsito. O método proposto consiste em uma aplicação que deve seguir os seguintes passos: (i) detectar objetos utilizando segmentação por movimento; (ii) aplicar, em cada objeto segmentado, técnicas de reconhecimento como algoritmos de aprendizado de máquina ou descritores de ponto para refinar a busca na detecção de veículos, assim como categorizá-los. Nesta etapa, tratamos as situações de oclusão, fenômeno de sobreposição de objetos, e; (iii) rastrear cada objeto, agora refinado, utilizando filtros de Kalman ou o método de Senior a fim de obtermos dados relevantes do tráfego. Inicialmente estamos coletando direção, velocidade e intensidade do fluxo através da contagem volumétrica, que podem ser utilizados para qualquer fim, não só para o objetivo final do que é aqui proposto. Finalmente, demonstramos a eficiência da abordagem proposta em experimentos com vídeos coletados sob diferentes condições de iluminação.


  • Mostrar Abstract
  • Some of the major problems in large cities are related to traffic in public streets. Problems such as traffic jams and vehicle accidents directly impact society in a negative way, and are usually attributed to lack of urban planning from government, the lack of public policy or researches aimed at solving this problems, even if partially. These researches depend on data that must be collected in loco on the main avenues and streets of a city, demanding a big human force to collected them manually, also possibly incurring in error because of its manual characteristic. It is common to see CFTV systems around the city being used as the main mean of traffic monitoring. Thus, we devised a solution capable of collecting these data automatically in real-time, using videos captured using these cameras. The proposed solution consists of the following steps: (i) detect objects usign motion segmentation; (ii) apply pattern recognition methods such as machine learning mehtods or point descriptors to identify and classify vehicles. In this stage, we deal with the problem of occluded vehicles, e; (iii) track each object, now using Kalman filters or the mehtod of Senior in order to obtain relevant traffic data. Initially, we are collecting direction, velocity and flow intensity trhough volumetric counting, that can be used for other purposes, and not only the one handled here. Finally, we demostrate the efficiency of the proposed approach on experiments using videos acquired under different lightning conditions.

     

20
  • ZAILTON SACHAS AMORIM CALHEIROS
  • O Problema do Caixeiro Viajante com Passageiros

  • Orientador : MARCO CESAR GOLDBARG
  • MEMBROS DA BANCA :
  • MARCO CESAR GOLDBARG
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • MATHEUS DA SILVA MENEZES
  • Data: 31/07/2017

  • Mostrar Resumo
  • Este trabalho apresenta um modelo de compartilhamento de assentos veicular de modo a reduzir os custos de viagem de motoristas e passageiros, contribuindo de maneira significativa ao meio ambiente e à sociedade. O problema também é descrito através de um modelo de programação linear e são discutidas algumas variantes de um subproblema importante para resolução do modelo proposto. Além disso, algumas abordagens computacionais são implementadas, compostas de algoritmos evolucionários (genético e mémetico) e construtivos (formigas e GRASP). Além da adaptação de algoritmos já existes para o problema do caixeiro viajante tradicional como o algoritmo de Lin-Kernighan. Após a realização de experimentos, o algoritmos baseado em formiga revela-se promissor para instâncias assimétricas enquanto que o algoritmo de Lin-Kernighan leva vantagem pela sua robustez através da implementação de Helsgaun e desempenha bom resultados para instâncias simétricas.

     

     

     


  • Mostrar Abstract
  • This thesis presents a vehicle seat sharing model in order to reduce travel costs for drivers and passengers, contributing significantly to the environment and society. The problem is also described by a linear programming model and it is discussed in some variants of an important subproblem for solving the main problem. Besides, some computational approaches are implemented, composed by evolutionary (genetic and memetic) e constructive (ant optimization) algorithms. In addition to the adaptation of already existing algorithms for the travaling salesman problem as the Lin-Kernighan algorithm. After performing experiments, ant-based algorithms prove itself promising for asymmetric instances while the Lin-Kernighan algorithm takes advantage of its robustness through the implementation of Helsgaun and has a good performance for symmetric instances.

21
  • GABRIEL ALVES VASILJEVIC MENDES
  • Brain-Computer Interface Games based on Consumer-Grade Electroencephalography Devices: Systematic Review and Controlled Experiments

  • Orientador : LEONARDO CUNHA DE MIRANDA
  • MEMBROS DA BANCA :
  • BRUNO MOTTA DE CARVALHO
  • FABRICIO LIMA BRASIL
  • LEONARDO CUNHA DE MIRANDA
  • SELAN RODRIGUES DOS SANTOS
  • Data: 31/07/2017

  • Mostrar Resumo
  • Brain-computer interfaces (BCIs) are specialized systems that allow users to control a computer or a machine using their brain waves. BCI systems allow patients with severe physical impairments, such as those suffering from amyotrophic lateral sclerosis, cerebral palsy and locked-in syndrome, to communicate and regain physical movements with the help of specialized equipment. With the development of BCI technology in the second half of the 20th century and the advent of consumer-grade BCI devices in the late 2000s, brain-controlled systems started to find applications not only in the medical field, but in areas such as entertainment. One particular area that is gaining more evidence due to the arrival of consumer-grade devices is the field of computer games, which has become increasingly popular in BCI research as it allows for more user-friendly applications of BCI technology in both healthy and unhealthy users. However, numerous challenges are yet to be overcome in order to advance in this field, as the origins and mechanics of the brain waves and how they are affected by external stimuli are not yet fully understood. In this sense, a systematic literature review of BCI games based on consumer-grade technology was performed. Based on its results, two BCI games, one using attention and the other using meditation as control signals, were developed in order to investigate key aspects of player interaction: the influence of graphical elements on attention and control; the influence of auditory stimuli on meditation and work load; and the differences both in performance and multiplayer game experience, all in the context of neurofeedback-based BCI games.


  • Mostrar Abstract
  • Brain-computer interfaces (BCIs) are specialized systems that allow users to control a computer or a machine using their brain waves. BCI systems allow patients with severe physical impairments, such as those suffering from amyotrophic lateral sclerosis, cerebral palsy and locked-in syndrome, to communicate and regain physical movements with the help of specialized equipment. With the development of BCI technology in the second half of the 20th century and the advent of consumer-grade BCI devices in the late 2000s, brain-controlled systems started to find applications not only in the medical field, but in areas such as entertainment. One particular area that is gaining more evidence due to the arrival of consumer-grade devices is the field of computer games, which has become increasingly popular in BCI research as it allows for more user-friendly applications of BCI technology in both healthy and unhealthy users. However, numerous challenges are yet to be overcome in order to advance in this field, as the origins and mechanics of the brain waves and how they are affected by external stimuli are not yet fully understood. In this sense, a systematic literature review of BCI games based on consumer-grade technology was performed. Based on its results, two BCI games, one using attention and the other using meditation as control signals, were developed in order to investigate key aspects of player interaction: the influence of graphical elements on attention and control; the influence of auditory stimuli on meditation and work load; and the differences both in performance and multiplayer game experience, all in the context of neurofeedback-based BCI games.

22
  • DALAY ISRAEL DE ALMEIDA PEREIRA
  • Uma extensão de uma ferramenta para o suporte formal ao desenvolvimento baseado em componentes

  • Orientador : MARCEL VINICIUS MEDEIROS OLIVEIRA
  • MEMBROS DA BANCA :
  • AUGUSTO CEZAR ALVES SAMPAIO
  • MARCEL VINICIUS MEDEIROS OLIVEIRA
  • MARTIN ALEJANDRO MUSICANTE
  • Data: 18/08/2017

  • Mostrar Resumo
  • O desenvolvimento de sistemas baseado em componentes é considerado uma evolução para o processo de desenvolvimento de software. Usando essa abordagem, a manutenção do sistema é facilitada, trazendo mais segurança e reuso. A composição de componentes (e suas interações), entretanto, é ainda a maior fonte de problemas e requer uma análise mais detalhada. Métodos formais são uma ferramenta precisa para a especificação de sistemas e possui uma base matemática forte que traz, entre outros benefícios, mais segurança para os sistemas. O método formal CSP permite a especificação de sistemas concorrentes e a verificação de propriedades inerentes a esses sistemas. CSP tem um conjunto de ferramentas que auxiliam na sua verificação, como FDR2 e FDR3. Porém, a verificação de algumas propriedades podem levar muito tempo, como, por exemplo, a verificação da ausência de deadlock. BRICK surge como uma abordagem baseada em CSP para o desenvolvimento de sistemas assíncronos baseados em componentes que garante a ausência de deadlock por construção. Essa abordagem usa CSP para especificar constantes e interações entre os componentes a fim de permitir uma verificação do sistema em si. Entretanto, o uso prático dessa abordagem pode ser muito complexo e cansativo. A fim de automatizar o uso de BRICK nós desenvolvemos uma ferramenta (BTS - BRICK Tool Support) que automatiza a verificação da composição de componentes por, automaticamente, gerar e checar as condições impostas pela abordagem utilizando FDR2. Porém, devido ao grande número e a complexidade das verificações feitas em FDR2, a ferramenta pode levar muito tempo no processo de verificação. Neste trabalho, nós apresentamos uma extensão para BTS que melhora a maneira pela qual a ferramenta faz as verificações, trocando FDR2 para FDR3 e adicionando um provador de SMT que, concorrentemente, checa algumas das propriedades das especificações. Nós também melhoramos os casos de uso para avaliarmos a nossa ferramenta.

  • Mostrar Abstract
  • The component-based development of systems is considered an important evolution in the software
    development process. Using this approach, the system maintenance is facilitated, bringing
    more reliability and reuse of components. However, the composition of components (and their
    interactions) is still the main source of problems and requires a more detailed analysis. This
    problem is even more relevant when dealing with safety-critical applications. An approach
    for specifying this kind of applications is the use Formal Methods, which are an accurate tool
    for system specification that has strong mathematical background which brings, among other
    benefits, more safety. As an example, the formal method CSP allows the specification of concurrent
    systems and the verification of properties inherent to such systems. CSP has a set of
    tools for its verification, like, for instance, FDR. Using CSP, one can detect and solve problems
    like deadlock and livelock in a system, although it can be costly in terms of time spent
    in verifications. In this context, BRICK has emerged as a CSP based approach for developing
    asynchronous component-based systems, which guarantees deadlock freedom by construction.
    This approach uses CSP to specify the constraints and interactions between the components to
    allow a formal verification of the system. However, the practical use of this approach can be
    too complex and cumbersome. In order to automate the use of the BRICK approach we have
    developed a tool (BTS - BRICK Tool Support) that automates the verifications of component
    compositions by automatically generating and checking the side conditions imposed by the approach
    using FDR. But, due to the number and complexity of the verifications made in FDR,
    the tool can still take too much time in this process.
    In this dissertation proposal, we present an extension to BTS that improves the way how
    it make verifications by replacing the FDR used inside the tool by its most recent version and
    adding a SMT-solver, that, concurrently, checks some properties of the specification. We also
    evaluated the tool with a new case study, comparing the verifications made in the older version
    of the tool with this new approach of verification. The internal structure of the tool has also
    been improved in order to make it easier to be extended, which is also an contribution of our
    work.

23
  • ALAN DE OLIVEIRA SANTANA
  • Geração de Ambientes Virtuais de Ensino-Aprendizagem para Cursos Baseados na Realização de Projetos

  • Orientador : EDUARDO HENRIQUE DA SILVA ARANHA
  • MEMBROS DA BANCA :
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • ROBERTO ALMEIDA BITTENCOURT
  • Data: 30/11/2017

  • Mostrar Resumo
  • Os altos índices de reprovação e evasão em cursos de computação torna-se um fator limitador para o desenvolvimento de diversas áreas profissionais, tornando a oferta de mão de obra especializada escassa. Neste sentido, cursos de desenvolvimento de jogos podem mitigar este fator, pois permitem abstrair as informações e entender onde se aplicada cada conceito estudado de forma lúdica. Neste contexto a utilização do modelo PBL agrega valor por permitir que o estudante aprenda a aprender, desenvolvendo características pessoais de interpretação e resolução de problemas de forma eficiente, além de competências relativas ao trabalho em equipe. Porém, os cursos baseados em PBL possuem turmas reduzidas para permitir que o professor possa auxiliar os alunos de forma mais eficiente. Em contrapartida, esse fator limita a abertura de mais vagas, devido ao custo com professores, materiais por turma, entre outros, tanto na educação presencial quanto a distância. Uma forma de mitigar estes gastos e melhorar a eficiência dos cursos baseados em PBL através de tutores virtuais digitais. Estes tutores apresentam características que simulam um professor e os permitem direcionar e auxiliar os estudantes, todavia, com maior tempo disponível, permitindo que os alunos aprendam em seu próprio ritmo. Neste contexto, observasse que dentro de uma turma, os alunos também apresentam objetivos e capacidades diferentes. Desta forma, o objetivo desta dissertação é propor uma arquitetura de geração de tutores virtuais para diferentes perfis de alunos, para ser aplicado em cursos de programação de jogos baseados no modelo PBL. Para permitir avaliar a demanda e contribuições que esta proposta pode ocasionar, foram realizados estudos afim de levantar os dados necessários para desenvolver os tutores para cada perfil de aluno e avaliar os resultados benéficos que cada tutor permite trazer a cada perfil. Assim o primeiro estudo foi desenvolver uma revisão sistemática da literatura a fim de observar como tutores eram desenvolvidos, principalmente ligados a computação afetiva. Após os resultados deste estudo um protótipo foi desenvolvido para aulas direcionadas e objetivas baseadas em missões (atividades ligadas ao modelo PBL), e contendo no sistema um personagem virtual animado que atual como expositor dos conteúdos. Este protótipo foi aplicado a um experimento com alunos do nível médio que permitiu o desenvolvimento de um novo tutor para um novo perfil de alunos, mais interativo. Este novo protótipo foi desenvolvido baseado no chatbot ALICE e na linguagem AIML. Após a conclusão deste tutor, um experimento foi realizado utilizando ambos tutores para avaliar a proposta de um gerador de tutores para serem aplicados a uma mesma turma. Este experimento foi aplicado a alunos de graduação em licenciatura objetivando permitir que estes professores replicassem o estudo em suas turmas em um futuro próximo. Por fim os dados foram analisados e foi possível responder as questões de pesquisas desenvolvidas durante o estudo. Os resultados apresentados nesta obra, mostraram que os alunos se divertiram durante as aulas, motivadas pelo fator lúdico ligado as aulas de programação de jogos e dos tutores virtuais. Este fator permitiu que os alunos apresentassem bons resultados durante o desenvolvimento dos jogos, com mais de 75% dos alunos concluindo os problemas propostos, com os demais apresentando em torno de 90% de andamento dos problemas. Outro ponto observado foi que as turmas apresentaram distinção de perfil em ordem de 56% para 44% de dispersão entre os tutores que mais se adaptaram a seu perfil. Estes dados sugerem a possibilidade de inserir um gerador de tutores para perfis diferentes de alunos nesta turma, porém, são necessários outros estudos para evidenciar de forma mais contundente este dado apresentado. Em geral os tutores tornaram as aulas mais dinâmicas e produtivas mostrando-se excelentes ferramentas de suporte aos alunos no desenvolvimento de jogos baseados em PBL.


  • Mostrar Abstract
  • The high rates of failure and avoidance in computing courses become a limiting factor for the development of several professional areas, making the supply of skilled labor scarce. In this sense, courses of game development can mitigate this factor, since they allow to abstract the information and to understand where each concept studied is applied in a playful way. In this context, the use of the PBL model adds value by allowing the student to learn to learn, developing personal characteristics of interpretation and problem solving in an efficient way, as well as skills related to teamwork. However, PBL-based courses have reduced classes to enable the teacher to assist students more effectively. In contrast, this factor limits the opening of more places, due to the cost with teachers, materials per class, among others, both in faceto-face and in distance education. A way to mitigate these costs and improve the efficiency of PBL-based courses through digital virtual tutors. These tutors have features that simulate a teacher and allow them to direct and assist students, however, with more time available, allowing students to learn at their own pace. In this context, note that within a class, students also have different goals and abilities. In this way, the objective of this dissertation is to propose an architecture of generation of virtual tutors for different profiles of students, to be applied in programming courses of games based on the PBL model. In order to evaluate the demand and contributions that this proposal can cause, studies were carried out in order to collect the necessary data to develop the tutors for each student profile and to evaluate the beneficial results that each tutor can bring to each profile. Thus the first study was to develop a systematic review of the literature in order to observe how tutors were developed, mainly related to affective computation. After the results of this study, a prototype was developed for targeted and objective classes based on missions (activities related to the PBL model), and contained in the system an animated virtual character that is currently exhibiting the contents. This prototype was applied to an experiment with middle-level students that allowed the development of a new tutor for a new, more interactive profile of students. This new prototype was developed based on the ALICE chatbot and the AIML language. Upon completion of this tutor, an experiment was conducted using both tutors to evaluate the proposal of a tutors generator to be applied to the same class. This experiment was applied to undergraduate students in order to allow these teachers to replicate the study in their classes in the near future. Finally, the data were analyzed and it was possible to answer the research questions developed during the study. The results presented in this work showed that the students had fun during the classes, motivated by the ludic factor connected to the programming classes of games and virtual tutors. This factor allowed the students to present good results during the development of the games, with more than 75% of the students concluding the problems proposed, with the others presenting around 90% of the problems. Another point observed was that the groups presented a profile distinction in order of 56% to 44% of dispersion among the tutors who most adapted to their profile. These data suggest the possibility of inserting a tutors generator for different profiles of students in this class, however, other studies are needed to show more clearly this presented data. In general, tutors have made classes more dynamic and productive, proving to be excellent tools to support students in the development of PBL-based games.

Teses
1
  • DANIEL ALENCAR DA COSTA
  • Understanding the Delivery Delays of Addressed Issues in Large Software Projects

  • Orientador : UIRA KULESZA
  • MEMBROS DA BANCA :
  • UIRA KULESZA
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • FERNANDO MARQUES FIGUEIRA FILHO
  • AHMED HASSAN
  • MARCELO DE ALMEIDA MAIA
  • MARCO TULIO DE OLIVEIRA VALENTE
  • Data: 08/02/2017

  • Mostrar Resumo
  • The timely delivery of addressed software issues (i.e., bug fixes, enhancements, and new features) is what drives software development. Previous research has investigated what impacts the time to triage and address (or fix) issues. Nevertheless, even though an issue is addressed, i.e., a solution is coded and tested, such an issue may still suffer delay before being delivered to end users. Such delays are frustrating, since end users care most about when an addressed issue is available in the software system (i.e, released). In this matter, there is a lack of empirical studies that investigate why addressed issues take longer to be delivered compared to other issues.

    In this thesis, we perform empirical studies to understand which factors are associated with the delayed delivery of addressed issues. In our studies, we find that 34% to 98% of the addressed issues of the ArgoUML, Eclipse and Firefox projects have their integration delayed by at least one release. Our explanatory models achieve ROC areas above 0.74 when explaining delivery delay. We also find that the workload of integrators and the moment at which an issue is addressed are the factors with the strongest association with delivery delay. We also investigate the impact of rapid release cycles on the delivery delay of addressed issues. Interestingly, we find that rapid release cycles of Firefox are not related to faster delivery of addressed issues. Indeed, although rapid release cycles address issues faster than traditional ones, such addressed issues take longer to deliver. Moreover, we find that rapid releases deliver addressed issues more consistently than traditional ones. Finally, we survey 37 developers of the ArgoUML, Eclipse, and Firefox projects to understand why delivery delays occur. We find that the allure of delivering addressed issues more quickly to users is the most recurrent motivator of switching to a rapid release cycle. Moreover, the allure of improving the flexibility and quality of addressed issues is another advantage that are perceived by our participants. Additionally, the perceived reasons for the delivery delay of addressed issues are related to decision making, team collaboration, and risk management activities. Moreover, delivery delay likely leads to user/developer frustration according to our participants. Our thesis is the first work to study such an important topic in modern software development. Our studies highlight the complexity of delivering issues in a timely fashion (for instance, simply switching to a rapid release cycle is not a silver bullet that would guarantee the quicker delivery of addressed issues). 


  • Mostrar Abstract
  • The timely delivery of addressed software issues (i.e., bug fixes, enhancements, and new features) is what drives software development. Previous research has investigated what impacts the time to triage and address (or fix) issues. Nevertheless, even though an issue is addressed, i.e., a solution is coded and tested, such an issue may still suffer delay before being delivered to end users. Such delays are frustrating, since end users care most about when an addressed issue is available in the software system (i.e, released). In this matter, there is a lack of empirical studies that investigate why addressed issues take longer to be delivered compared to other issues.

    In this thesis, we perform empirical studies to understand which factors are associated with the delayed delivery of addressed issues. In our studies, we find that 34% to 98% of the addressed issues of the ArgoUML, Eclipse and Firefox projects have their integration delayed by at least one release. Our explanatory models achieve ROC areas above 0.74 when explaining delivery delay. We also find that the workload of integrators and the moment at which an issue is addressed are the factors with the strongest association with delivery delay. We also investigate the impact of rapid release cycles on the delivery delay of addressed issues. Interestingly, we find that rapid release cycles of Firefox are not related to faster delivery of addressed issues. Indeed, although rapid release cycles address issues faster than traditional ones, such addressed issues take longer to deliver. Moreover, we find that rapid releases deliver addressed issues more consistently than traditional ones. Finally, we survey 37 developers of the ArgoUML, Eclipse, and Firefox projects to understand why delivery delays occur. We find that the allure of delivering addressed issues more quickly to users is the most recurrent motivator of switching to a rapid release cycle. Moreover, the allure of improving the flexibility and quality of addressed issues is another advantage that are perceived by our participants. Additionally, the perceived reasons for the delivery delay of addressed issues are related to decision making, team collaboration, and risk management activities. Moreover, delivery delay likely leads to user/developer frustration according to our participants. Our thesis is the first work to study such an important topic in modern software development. Our studies highlight the complexity of delivering issues in a timely fashion (for instance, simply switching to a rapid release cycle is not a silver bullet that would guarantee the quicker delivery of addressed issues). 

2
  • DEMOSTENES SANTOS DE SENA
  • Uma Abordagem de Apoio à Extração da Política de Tratamento de Exceções

  • Orientador : ROBERTA DE SOUZA COELHO
  • MEMBROS DA BANCA :
  • ROBERTA DE SOUZA COELHO
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • UIRA KULESZA
  • EIJI ADACHI MEDEIROS BARBOSA
  • FRANCISCO DANTAS DE MEDEIROS NETO
  • RODRIGO BONIFACIO DE ALMEIDA
  • Data: 13/02/2017

  • Mostrar Resumo
  • Os mecanismos de tratamento de exceções são recursos fornecidos pelas principais linguagens de programação para auxiliar no desenvolvimento de sistemas robustos. A política de tratamento de exceções corresponde ao conjunto de regras de design do tratamento excepcional e definem os elementos de código (métodos, classes ou pacotes) responsáveis pela sinalização, propagação, captura das exceções e as respectivas ações de tratamento. Historicamente, as políticas de tratamento de exceções dos sistemas são postergadas ou ignoradas no processo de desenvolvimento. Entretanto, estudos empíricos demonstraram que o tratamento inadequado de exceções é uma possível fonte de defeitos. Devido à natureza implícita dos fluxos de exceções, a identificação do tratamento de exceções torna-se uma tarefa complexa. Para amenizar os problemas decorrentes do tratamento inadequado e da falta de compreensão do tratamento de exceções, algumas abordagens propuseram expor graficamente os fluxos excepcionais e outras abordagens definiram linguagens de especificação das regras de tratamento com suporte ferramental para auxiliar na definição e checagem das regras. Porém nenhuma das abordagens propostas oferece suporte ao momento da definição das regras, de forma a auxiliar o arquiteto a extrair as regras a partir da análise de código pré-existente.

    Este trabalho apresenta uma proposta para preencher a lacuna existente entre os passos de definição da política e sua compreensão e checagem. Para apoiar a execução da abordagem proposta, foi desenvolvida uma suíte de ferramentas de análise estática que permite: (i) coletar os fluxos excepcionas e as respectivas ações de tratamentos; (ii) a definição dos agrupamentos; (iii) a extração das regras; e, (iv) a checagem das regras e identificação das causas das violações à política. A abordagem é demonstrada em dois estudos empíricos. No primeiro estudo empírico foram analisadas 656 bibliotecas (libs) Java do repositório central Maven com objetivo de extrair e caracterizar a política de tratamento de exceções destas libs. Este estudo revelou que 80,9% das bibliotecas possuem fluxos excepcionais que implementam pelo menos um anti-pattern do tratamento excepcional. O segundo estudo empírico teve como objetivo investigar os benefícios que a extração das regras excepcionais pode ter na compreensão e refinamento da política de tratamento de exceções. Dois sistemas de informação Web (i.e., IProject e SIGAA) foram utilizados neste segundo estudo. Neste estudo pudemos observar que todas as regras extraídas pelo suporte ferramental correspondiam às regras reportadas pelos arquitetos, e que os resultados do processo de extração permitiram que novas regras fossem adicionadas pelos arquitetos. Essas regras adicionadas correspondiam à 57,1% (IProject) e 52,8% (SIGAA/Graduação) das regras da política dos sistemas analisados. O processo de checagem das regras definidas com o apoio da abordagem mostrou que 35,6% e 45,7% dos fluxos excepcionais do IProject e SIGAA/Graduação, respectivamente, violavam alguma das regras de tratamento de exceções.


  • Mostrar Abstract
  • The Exception handling (EH) mechanisms is a technique embedded in most of the mainstream programming languages to support the development of robust systems. The exception handling policy is composed by the set of exception handling design rules and which specify the elements (methods, classes and packages) responsible for raising, propagating and catching of exceptions as well as the handling actions. Historically, implementation of the exception handling code is postponed or ignored in the software process development. As a consequence, empirical studies have demonstrated that the inappropriate exception handling is a source of bug hazards. Due to the implicit nature of exception flows, the identification of exception handling code is a complex task. In order to address the problems resulting from the not-understood or inadequate exception handling, some approaches have been proposed. Some of them expose the exception flows (e.g. graphically) and others define exception handling rule languages with tool support for EH policy definition and checking. However, none of the proposed approaches provide support to the phase of exception policy definition.

    This work proposes an approach helps the architect to extract the EH rules by performing an analysis on the existing code. Doing so, this approach fills a gap previous the EH policy definition, its comprehension and checking. In order to support the proposed approach, a static tool suite was developed, which performs: (i) the discovery of exception flows and its handling actions, (ii) the definition of compartments (iii) the semi-automatic rule extraction process, and (iv) the rule checking and identification of rule violation causes. This approach was performed in two empirical studies. In the first study, 656 libraries from Maven central repository were analyzed. The main goal of this study was revealed and characterized the exception handling policy of analyzed libraries. This study revealed that 80.9% of analyzed libraries have exception flows that implement at least an exceptional anti-pattern. In the second study, we investigated the benefits of rule extraction process in the understanding and the refinement of exception handling policy. Two web information systems (i.e., IProject and SIGAA) were analyzed in this second study. We found that all of extracted rules belonged in the set of rules reported by the architects and the result of extract process allowed that new rules were added to the policy. These added rules corresponded to 57.1% (IProject) and 52.8% (SIGAA/Graduação) of the rules of analyzed systems. The checking process of defined rules supported by our approach verified that 35.6% (IProject) and 45.7% (SIGAA/Graduação) of exception flows violated some defined rule.

3
  • THIAGO REIS DA SILVA
  • Investigando o Uso de Aulas On-line de Programação de Jogos Digitais no Ensino Básico

  • Orientador : EDUARDO HENRIQUE DA SILVA ARANHA
  • MEMBROS DA BANCA :
  • AYLA DÉBORA DANTAS DE SOUZA REBOUÇAS
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • ROMMEL WLADIMIR DE LIMA
  • SÉRGIO CASTELO BRANCO SOARES
  • Data: 11/03/2017

  • Mostrar Resumo
  • A introdução de atividades ou mesmo matérias relacionadas ao ensino de programação nas escolas tem sido discutida cada vez mais, com entusiasmo nas associações e comissões que tratam do ensino de Computação. No Brasil, a Sociedade Brasileira de Computação recomenda que noções de programação sejam ensinadas a partir do Ensino Básico, argumentando que as habilidades associadas, quando construídas desde cedo, contribuem para o desenvolvimento de raciocínio lógico e resolução de problemas, o que ajuda a aumentar o número de profissionais da área além de trabalhar o despertar vocacional dos jovens. Os jogos digitais são elementos que vêm sendo muito utilizados na inserção do ensino de programação nas escolas por oferecerem momentos lúdicos e interativos no processo de aprendizagem, são atrativos ao aluno e aumentam a disposição deste para aprender. Nesse contexto, este trabalho de doutorado propõe: (i) criar uma metodologia de ensino de programação de jogos digitais on-line que possa ser utilizada em larga escala; (ii) ensinar programação de jogos nas escolas através de videoaulas; e (iii) a condução de estudos empíricos que busquem identificar os benefícios e limitações da metodologia proposta.


  • Mostrar Abstract
  • The introduction of activities or even related subjects to the teaching of programming in schools has been increasingly discussed, with enthusiasm in the associations and commissions that deal with teaching of Computing.
    In Brazil, the Brazilian Computer Society recommends that notions of programming be taught from K-12 Education, arguing that the associated skills, when built early, contribute to the development of logical reasoning and problem solving, which helps to increase the Number of professionals in the area in addition to working the vocational awakening of young people. Digital games are elements that have been used a lot in the insertion of the teaching of programming in the schools for offering playful and interactive moments in the learning process, are attractive to the student and increase the student's readiness to learn. In this context, this doctoral work proposes: (i) to create a methodology for teaching online digital game programming that can be used on a large scale; (Ii) teach video game programming in schools; And (iii) conducting empirical studies that seek to identify the benefits and limitations of the proposed methodology.

4
  • HANIEL MOREIRA BARBOSA
  • Novas técnicas de instanciação e produção de demonstrações para a resolução SMT
  • Orientador : DAVID BORIS PAUL DEHARBE
  • MEMBROS DA BANCA :
  • ANDREW REYNOLDS
  • CATHERINE DUBOIS
  • DAVID BORIS PAUL DEHARBE
  • ERIKA ÁBRAHÁM
  • JOAO MARCOS DE ALMEIDA
  • PASCAL FONTAINE
  • PHILIPP RÜMMER
  • STEPHAN MERZ
  • Data: 05/09/2017

  • Mostrar Resumo
  • Várias aplicações do mundo real, como verificação formal, síntese de programas, geração au-
    tomática de testes e análise de programas, dependem de solucionadores de satisfatibilidade mó-
    dulo teorias (SMT) como backends para descarregar automaticamente obrigações de demon-
    stração. Embora esses solucionadores sejam extremamente eficientes no tratamento de fórmulas
    livres de quantificadores, mesmo que muito grandes, contendo símbolos de teorias, como os arit-
    méticos, eles ainda tem problemas para lidar com fórmulas quantificadas.
    
    Nossa primeira contribuição nesta tese é fornecer um arcabouço uniforme e eficiente para
    raciocinar com fórmulas quantificadas em CDCL(T), o cálculo mais comumente utilizado em
    solucionadores SMT, em que, geralmente, várias técnicas de instanciação são empregadas para
    lidar com quantificadores. Mostramos que as principais técnicas de instanciação podem ser
    embutidas em um arcabouço único para lidar com fórmulas quantificadas contendo igualdade e
    funções não interpretadas. Esta arquitetura é baseada no problema de E -ground (dis)unificação,
    uma variação do clássico problema de E -unificação rígida. Apresentamos um cálculo correto
    e completo para resolver este problema na prática: Fechamento de Congruência com Variáveis
    Livres (CCFV). Uma avaliação experimental da implementação do CCFV no solucionador SMT
    veriT apresenta melhorias significativas para este, tornando-o competitivo com solucionadores
    de última geração em várias bibliotecas de referência provenientes de aplicações do mundo real.
    
    Nossa segunda contribuição é um arcabouço para o processamento de fórmulas em solu-
    cionadores SMT, com a geração de demonstrações detalhadas. Nosso objetivo é aumentar a
    confiabilidade nos resultados dos sistemas de raciocínio automatizado, fornecendo justificativas
    que podem ser verificadas eficientemente de forma independente, e para melhorar sua usabilidade
    por aplicações externas. Os assistentes de demonstração, por exemplo, geralmente requerem
    a reconstrução da justificativa fornecida pelo solucionador em uma determinada obrigação de
    demonstração.
    
    Os principais componentes do nosso arcabouço de produção de demonstrações são um algo-
    ritmo de recursão contextual genérico e um conjunto extensível de regras de inferência. Clausi-
    ficação, skolemização, simplificações específicas de teorias e expansão de expressões ‘let’ são
    instâncias desta arquitetura. Com estruturas de dados adequadas, a geração de demonstrações
    acrescenta apenas uma sobrecarga de tempo linear, e as demonstrações podem ser verificadas
    em tempo linear. Implementamos esta abordagem também no solucionador veriT. Isso nos per-
    mitiu simplificar drasticamente o código de processamento, enquanto aumentamos o número de
    problemas para os quais as demonstrações detalhadas podem ser produzidas.

  • Mostrar Abstract
  • A variety of real world applications, such as formal verification, program synthesis, automatic testing, and program analysis, rely on satisfiability modulo theories (SMT) solvers as backends to automatically discharge proof obligations. While these solvers are extremely efficient at handling large ground formulas with theory symbols, such as arithmetic ones, they still struggle to deal with quantifiers.
    
    Our first contribution in this thesis is in providing a uniform and efficient framework for reasoning with quantified formulas in CDCL(T), the calculus more commonly used in SMT solvers, in which generally various instantiation techniques are employed to handle quantifiers.  We show that the major instantiation techniques can be all cast in a unifying framework for quantified formulas with equality and uninterpreted functions. This framework is based on the problem of E-ground (dis)unification, a variation of the classic rigid E-unification problem.  We introduce a sound and complete calculus to solve this problem in practice: Congruence Closure with Free Variables (CCFV). An experimental evaluation of the implementation of CCFV in the SMT solver veriT validates the approach. veriT exhibits significant improvements and is now competitive with state-of-the-art solvers in several benchmark libraries stemming from real world applications.
    
    Our second contribution is a framework for processing formulas in SMT solvers, with generation of detailed proofs. Our goal is to increase the reliability on the results of automated reasoning systems, by providing justifications which can be efficiently checked independently, and to improve their usability by external applications. Proof assistants, for instance, generally require the reconstruction of the justification provided by the solver in a given proof obligation.
    
    The main components of our proof-producing framework are a generic contextual recursion algorithm and an extensible set of inference rules. Clausification, skolemization, theory-specific simplifications, and expansion of ‘let’ expressions are instances of this framework. With suitable data structures, proof generation adds only a linear-time overhead, and proofs can be checked in linear time. We also implemented the approach in veriT. This allowed us to dramatically simplify the code base while increasing the number of problems for which detailed proofs can be produced.
    
5
  • HELBER WAGNER DA SILVA
  • Um Arcabouço Cross-Layer para Controle de Sessões Multiusuário com Alta Demanda de Recursos em Redes IoT Softwarizadas

  • Orientador : AUGUSTO JOSE VENANCIO NETO
  • MEMBROS DA BANCA :
  • ANTÔNIO ALFREDO FERREIRA LOUREIRO
  • AUGUSTO JOSE VENANCIO NETO
  • EDUARDO COELHO CERQUEIRA
  • GIBEON SOARES DE AQUINO JUNIOR
  • THAIS VASCONCELOS BATISTA
  • Data: 29/11/2017

  • Mostrar Resumo
  • As aplicações de missão crítica (AMC) representam um dos casos de uso mais promissores da Internet das Coisas (do inglês, Internet of Things – IoT) ao prometer impactos em áreas vitais, como videovigilância inteligente em ambientes com alta densidade humana, tráfego de veículos autônomos com segurança, cirurgia remota com precisão, dentre muitas outras. As AMC devem explorar o conteúdo disponibilizado por plataformas IoT em cenários de rede IoT softwarizada (IoTS), que nesta tese representa um sistema IoT executando sobre uma infraestrutura de rede cuja arquitetura inclui substrato de rede definida por software para permitir a flexibilidade nas operações de controle. Entretanto, as AMC possuem fortes requisitos de Qualidade de Serviço (do inglês, Quality of Service - QoS), tais como latência, jitter e perdas, além da alta demanda por recursos de rede (e.g., processamento em nós, caminhos e largura de banda nos enlaces) que precisam ser assegurados pela IoTS para garantir eficiência e precisão. A variabilidade e a dinamicidade de requisitos dos serviços nesse cenário são muito elevadas, que podem ir desde a coleta de dados escalares (e.g., sensores ambientais, etc.) até o processamento digital de multimídia (e.g., vídeo e áudio) em tempo real. Nesse cenário de IoTS com AMC sensível a QoS, torna-se necessário um plano de controle que tenha capacidade de prover um serviço de transporte mais refinado com qualidade garantida, de forma otimizada e autônoma. Esta tese vai além do estado da arte ao definir um arcabouço holístico para o controle de sessões multiusuários (agregando múltiplas AMC compartilhando conteúdo de uma plataforma IoT) altamente sensíveis a qualidade em uma IoTS, com métodos refinados para orquestração auto-organizada, controle e gestão de recursos orientados a QoS. O arcabouço, chamado CLASSICO (Cross-LAyer SDN SessIon COntrol), permite acoplar a variabilidade e a dinamicidade da IoTS, alocando dinamicamente recursos para satisfazer requisitos das AMC em termos de largura de banda elevada e latências muito baixas durante todo o tempo de duração da sessão, alavancando substrato das Redes Definidas por Software (do inglês, Software Defined Networks - SDN) para flexibilidade e modularidade. Para alcançar esses objetivos, CLASSICO define um plano de controle cross-layer integrado à IoTS que considera os parâmetros do conteúdo (ao nível de aplicação) requerido pelas AMC para construir e manter sessões multiusuários orientadas a QoS, e induz uma IoTS multiusuário otimizada através do transporte baseado em grupos (ao nível de rede), buscando ao mesmo tempo aumentar a escalabilidade do sistema IoT. Para validação, CLASSICO foi prototipado e avaliado em um testbed real em um caso de uso de vídeo. Os resultados da avaliação revelam os ganhos de CLASSICO em termos de QoS e Qualidade de Experiência (do inglês, Quality of Experience - QoE), em comparação a uma solução baseada em SDN Multicast.


  • Mostrar Abstract
  • Mission Critical Applications (AMC) represent one of the most promising use cases in the Internet of Things (IoT) as they promise to impact vital areas, such as smart surveillance in environments with high human density, autonomous vehicle traffic with security, remote surgery with precision, among many others. AMC are expected to exploit the content made available by IoT platforms in softwarized IoT networks (IoTS) scenarios, which represents an IoT system running over a network infrastructure which includes software-defined network substrate to allow flexibility in control operations. However, AMCs have strong Quality of Service (QoS) requirements, such as latency, jitter and losses, as well as the high demand for network resources (e.g., node processing, paths and link bandwidth) that need to be guaranteed by IoTS to ensure efficiency and accuracy. The variability and dynamicity of service requirements in this scenario are very high, ranging from scalar data collection (e.g., environmental sensors, etc.) to digital multimedia (e.g., video and audio) processing in real time. In this IoTS scenario with QoS-sensitive AMC, it is necessary to have a control plan with the capacity to provide a fine-grained transport service with guaranteed quality, in an optimized and autonomous way. This thesis goes beyond the state of the art by defining a holistic framework for controlling multiuser sessions (aggregating multiple AMCs sharing content from an IoT platform) highly quality-sensitive in an IoTS, with fine-grained methods for quality-oriented self-organized orchestration, resource control and management. The framework, called CLASSICO (Cross-LAyer SDN SessIon COntrol), allows to couple IoTS variability and dynamicity, dynamically allocating resources to meet AMC requirements regarding high bandwidth and very low latencies throughout the session duration, leveraging the substrate of the Software Defined Networks (SDN) for flexibility and modularity. To achieve these objectives, CLASSICO defines a cross-layer control plan integrated with IoTS that considers the content parameters (at the application level) required by the AMC to build and maintain QoS-oriented multiuser sessions, and induces an optimized multiuser IoTS through group-based transport (at the network level), while increasing the scalability of the IoT system. For validation purposes, CLASSICO has been prototyped and evaluated on a real testbed in a video use case. The results of the evaluation reveal the gains of CLASSICO regarding QoS and Quality of Experience (QoE), in comparison to an SDN Multicast-based solution.

6
  • CLEVERTON HENTZ ANTUNES
  • Família de Critérios de Cobertura Baseados em Padrões para o Teste de Metaprogramas

  • Orientador : ANAMARIA MARTINS MOREIRA
  • MEMBROS DA BANCA :
  • ANAMARIA MARTINS MOREIRA
  • MARTIN ALEJANDRO MUSICANTE
  • PAULO HENRIQUE MONTEIRO BORBA
  • ROHIT GHEYI
  • UMBERTO SOUZA DA COSTA
  • Data: 15/12/2017

  • Mostrar Resumo
  • Apesar da existência de várias técnicas para a geração automática de dados de teste baseados em gramáticas,poucos trabalhos foram propostos no sentido de melhorar os dados de teste gerados aplicando restrições semânticas. Nesse sentido, pretendemos, neste trabalho, contribuir nesta direção para o caso particular do teste de metaprogramas, um programa que tem como dado de entrada um outro programa. Atualmente, a alternativa natural para o teste deste tipo de programa é a técnica de testes baseados em gramática. Essa técnica de teste pode ser aplicada de maneira relativamente simples, porém com um custo de geração e execução do conjunto de testes elevado e uma efetividade baixa. Por outro lado, diversas pesquisas e ferramentas de grupos interessados no desenvolvimento de metaprogramas fazem uso intenso do recurso de casamento de padrões durante a sua implementação e especificação. Neste caso, os padrões oferecem uma fonte de informação interessante para a criação de testes que são sintaticamente válidos e também satisfazem restrições semânticas. Dada a limitação dos testes baseados em gramáticas e considerando a informação embutida nos padrões existentes nos metaprogramas temos a oportunidade de contribuir para a melhoria do processo de teste para esses programas. Logo, o objetivo deste trabalho é avaliar o uso da informação de padrões para o teste de metaprogramas e com isso contribuir no seu processo de teste. No intuito de sistematizar o processo de teste de software é proposto um processo de design de teste e também uma família de critérios de cobertura baseados em padrões para o teste eficiente e sistematizado dos metaprogramas. São propostos quatro critérios de cobertura baseados em padrões, baseados nos critérios de particionamento do espaço de entrada. Também é apresentada uma relação hierárquica entre os critérios propostos. Com isso, diferentes níveis de rigor podem ser requeridos no processo através da escolha do critério adequado. A validação dessas contribuições é feita através de um estudo de caso e uma validação empírica. O estudo de caso apresenta uma instanciação de referência para o processo de design de testes de um verificador de tipos implementado como metaprograma baseado em padrões. O verificador de tipos é testado usando um conjunto de testes gerados pelos critérios de cobertura baseados em padrões e a qualidade desse conjunto é avaliada utilizando a técnica de mutação e através da comparação dos resultados obtidos com testes gerados por critérios baseados em gramática. Os estudos experimentais indicam a efetividade da aplicação dos critérios baseados em padrões e o ganho em custo-benefício em relação aos critérios baseados em gramática no contexto do teste de metaprogramas.


  • Mostrar Abstract
  • Although there are several techniques for the automatic generation of test data based on grammars, few studies have been proposed to improve the test data generated by applying semantic restrictions. In this sense, we intend in this work to contribute in this direction for the particular case of testing metaprograms, programs that have as input other programs. Currently, the natural alternative to testing this kind of program is using the grammar-based testing. That testing technique can be applied relatively easily, but with high costs, related to the generation and execution of the test set, and low effectiveness. Many researches and tools dedicated to the development of metaprograms make heavy use of pattern matching for their implementation and specification. In this case, the patterns offer an interesting source of information for creating tests that are syntactically valid and also satisfy semantic constraints. Given the limitation of grammar-based testing and pattern information on the metaprograms, we have an opportunity to contribute to the improvement of the testing process for these programs. Therefore, the goal of this work is to evaluate the use of pattern information for the testing of metaprograms and thus contribute to their testing process. In order to systematize the software testing process, a family of coverage criteria based on patterns is proposed to test metaprograms efficiently and systematically. Four pattern-based coverage criteria are proposed, they are based on classical input space partitioning combination criteria. Furthermore, a hierarchical relationship between the criteria is presented. Therefore, different levels of rigor can be required by choosing the appropriate criterion. The validation of these contributions is made using a case study and an empirical validation. The case study presents a reference instantiation for the test design process applied to a type checker implemented as metaprogram based on patterns. The type checker is tested using a test set generated by the pattern-based coverage criteria and the quality of this set is evaluated using the mutation technique. The results obtained are compared with those produced by a test set generated by the grammar-based criteria. The experimental studies indicate the effectiveness of the application of these pattern-based criteria and a gain of cost-return in relation to the grammar-based coverage criteria.

2016
Dissertações
1
  • MARCOS OLIVEIRA DA CRUZ
  • AccNoSys: Uma Arquitetura Adaptativa Aceleradora com Interconexão baseada em Rede em Chip

     
  • Orientador : MONICA MAGALHAES PEREIRA
  • MEMBROS DA BANCA :
  • MONICA MAGALHAES PEREIRA
  • MARCIO EDUARDO KREUTZ
  • IVAN SARAIVA SILVA
  • SILVIO ROBERTO FERNANDES DE ARAUJO
  • Data: 22/01/2016

  • Mostrar Resumo
  • A evolução dos processadores tem sido marcada pela crescente demanda por desempenho para atender as aplicações cada vez maiores e mais complexas. Juntamente com essa necessidade de desempenho, a heterogeneidade das aplicações exige também uma grande flexibilidade dos processadores. Os processadores convencionais são capazes de fornecer desempenho ou flexibilidade, mas sempre privilegiando um desses aspectos em detrimento do outro. Arquiteturas adaptativas aceleradoras de granularidade grossa têm sido propostas como uma solução capaz de oferecer, ao mesmo tempo, flexibilidade e desempenho. No entanto, um dos principais desafios desse tipo de arquitetura é o mapeamento de aplicações que é um problema NP-Completo. Dentre os fatores que contribuem para essa complexidade está o modelo de interconexão utilizado, que normalmente, se baseia em crossbar ou algum modelo próximo ao crossbar. Técnicas de  exploração de paralelismo, como  software pipelining, também são usadas para atingir melhor desempenho. Essas técnicas aumentam ainda mais a complexidade dos algoritmos de mapeamento. Este trabalho apresenta uma arquitetura adaptativa que utiliza um mecanismo de comunicação baseado em envio de pacotes para interconectar unidades funcionais. A arquitetura combinada com o modelo de interconexão é capaz de explorar paralelismo em dois níveis, a saber, ILP (incluindo técnicas de software pipeline) e TLP. O mapeamento das aplicações deve ser efetuado em tempo de compilação utilizando um algoritmo desenvolvido para a arquitetura de complexidade O(1). A arquitetura foi implementada em SystemC e a execução de diversas aplicações foi simulada, explorando tanto ILP quanto TLP. As simulações obtiveram, em média, 41% de ganho de desempenho em comparação com um processador RISC de 8 estágios de pipeline. Os resultados obtidos nas simulações confirmam que é possível explorar o paralelismo inerente das aplicações. Além disso a partir da escolha do modelo de mapeamento (como exploração de threads, ou de paralelismo no nível de instruções, laços, etc) é possível obter diferentes resultados através da adaptação da arquitetura a aplicação.


  • Mostrar Abstract
  • A evolução dos processadores tem sido marcada pela crescente demanda por desempenho para atender as aplicações cada vez maiores e mais complexas. Juntamente com essa necessidade de desempenho, a heterogeneidade das aplicações exige também uma grande flexibilidade dos processadores. Os processadores convencionais são capazes de fornecer desempenho ou flexibilidade, mas sempre privilegiando um desses aspectos em detrimento do outro. Arquiteturas adaptativas aceleradoras de granularidade grossa têm sido propostas como uma solução capaz de oferecer, ao mesmo tempo, flexibilidade e desempenho. No entanto, um dos principais desafios desse tipo de arquitetura é o mapeamento de aplicações que é um problema NP-Completo. Dentre os fatores que contribuem para essa complexidade está o modelo de interconexão utilizado, que normalmente, se baseia em crossbar ou algum modelo próximo ao crossbar. Técnicas de  exploração de paralelismo, como  software pipelining, também são usadas para atingir melhor desempenho. Essas técnicas aumentam ainda mais a complexidade dos algoritmos de mapeamento. Este trabalho apresenta uma arquitetura adaptativa que utiliza um mecanismo de comunicação baseado em envio de pacotes para interconectar unidades funcionais. A arquitetura combinada com o modelo de interconexão é capaz de explorar paralelismo em dois níveis, a saber, ILP (incluindo técnicas de software pipeline) e TLP. O mapeamento das aplicações deve ser efetuado em tempo de compilação utilizando um algoritmo desenvolvido para a arquitetura de complexidade O(1). A arquitetura foi implementada em SystemC e a execução de diversas aplicações foi simulada, explorando tanto ILP quanto TLP. As simulações obtiveram, em média, 41% de ganho de desempenho em comparação com um processador RISC de 8 estágios de pipeline. Os resultados obtidos nas simulações confirmam que é possível explorar o paralelismo inerente das aplicações. Além disso a partir da escolha do modelo de mapeamento (como exploração de threads, ou de paralelismo no nível de instruções, laços, etc) é possível obter diferentes resultados através da adaptação da arquitetura a aplicação.

2
  • LUCAS DANIEL MONTEIRO DOS SANTOS PINHEIRO
  • Algoritmos Experimentais para o Problema Biobjetivo da Árvore Geradora Quadrática em Adjacência de Arestas

  • Orientador : ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MEMBROS DA BANCA :
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MARCO CESAR GOLDBARG
  • RICHARD ADERBAL GONÇALVES
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • Data: 03/02/2016

  • Mostrar Resumo
  • O problema da Árvore Geradora Mínima Quadrática (AGMQ) é uma generalização do
    problema da Árvore Geradora Mínima onde, além dos custos lineares das arestas, custos
    quadráticos associados a cada par de arestas são considerados. Os custos quadráticos são
    devidos à custos de interação entre as arestas. No caso das interações ocorrerem somente
    entre arestas adjacentes, o problema é denominado Árvore Geradora Mínima Quadrática
    em Adjacência de Arestas (AGMQA). Tanto a AGMQ quanto a AGMQA são NP-difíceis
    e modelam diversos problemas reais envolvendo projeto de redes de infraestrutura. Os
    custos lineares e quadráticos são somados nas versões mono-objetivo destes problemas.
    Frequentemente, aplicações reais lidam com objetivos conflitantes. Nestes casos a consideração dos custos lineares e quadráticos separadamente é mais adequada e a otimização
    multiobjetivo provê modelos mais realistas. Algoritmos exatos e heurísticos são investigados neste trabalho para a versão biobjetivo da AGMQA. As seguintes técnicas são
    propostas: backtracking, branch-and-bound, busca local, Greedy Randomized
    Adaptive Search Procedure, Simulated Annealing, NSGAII, Algoritmo Transgenético, Otimização por Nuvem de Partículas e uma hibridização entre a técnica do MOEA-D e
    o Algoritmo Transgenético. São utilizados indicadores de qualidade Pareto concordantes
    para comparar os algoritmos em um conjunto de instâncias de bases de dado da literatura.


  • Mostrar Abstract
  • O problema da Árvore Geradora Mínima Quadrática (AGMQ) é uma generalização do
    problema da Árvore Geradora Mínima onde, além dos custos lineares das arestas, custos
    quadráticos associados a cada par de arestas são considerados. Os custos quadráticos são
    devidos à custos de interação entre as arestas. No caso das interações ocorrerem somente
    entre arestas adjacentes, o problema é denominado Árvore Geradora Mínima Quadrática
    em Adjacência de Arestas (AGMQA). Tanto a AGMQ quanto a AGMQA são NP-difíceis
    e modelam diversos problemas reais envolvendo projeto de redes de infraestrutura. Os
    custos lineares e quadráticos são somados nas versões mono-objetivo destes problemas.
    Frequentemente, aplicações reais lidam com objetivos conflitantes. Nestes casos a consideração dos custos lineares e quadráticos separadamente é mais adequada e a otimização
    multiobjetivo provê modelos mais realistas. Algoritmos exatos e heurísticos são investigados neste trabalho para a versão biobjetivo da AGMQA. As seguintes técnicas são
    propostas: backtracking, branch-and-bound, busca local, Greedy Randomized
    Adaptive Search Procedure, Simulated Annealing, NSGAII, Algoritmo Transgenético, Otimização por Nuvem de Partículas e uma hibridização entre a técnica do MOEA-D e
    o Algoritmo Transgenético. São utilizados indicadores de qualidade Pareto concordantes
    para comparar os algoritmos em um conjunto de instâncias de bases de dado da literatura.

3
  • INGRID MORGANE MEDEIROS DE LUCENA
  • Uma Revisão de Modelos e Algoritmos de Otimização para a Área de Teste de Software

  • Orientador : ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MEMBROS DA BANCA :
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MARCO CESAR GOLDBARG
  • RICHARD ADERBAL GONÇALVES
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • Data: 03/02/2016

  • Mostrar Resumo
  • A área denominada de Engenharia de Software Baseada em Pesquisa (Search Based Software Engineering) vem crescendo nas últimas décadas e possui um grande número de trabalhos dedicados a ela. Esta área reúne a Engenharia de Software e a Otimização no desenvolvimento de algoritmos que otimizem os custos de atividades inerentes ao processo do desenvolvimento de software. Dentre tais atividades está o teste de software, o qual visa verificar, detectar e corrigir possíveis erros cometidos pelos programadores. Uma vez que esta atividade é responsável por até 50% do custo total do desenvolvimento, os pesquisadores buscam minimizar o custo dos testes sem comprometer a qualidade do software. Os primeiros trabalhos abordando atividades de Teste de Software como problemas de otimização surgiram na década de 70. Este trabalho tem por objetivo realizar uma revisão do estado-da-arte das técnicas e algoritmos de otimização desenvolvidos para teste de software, estendendo um trabalho anterior, com a revisão de 415 artigos da área. É, também, apresentada uma classificação de tais trabalhos quanto aos tipos de métricas, algoritmos de otimização e outras características dos problemas inerentes ao teste de software.


  • Mostrar Abstract
  • A área denominada de Engenharia de Software Baseada em Pesquisa (Search Based Software Engineering) vem crescendo nas últimas décadas e possui um grande número de trabalhos dedicados a ela. Esta área reúne a Engenharia de Software e a Otimização no desenvolvimento de algoritmos que otimizem os custos de atividades inerentes ao processo do desenvolvimento de software. Dentre tais atividades está o teste de software, o qual visa verificar, detectar e corrigir possíveis erros cometidos pelos programadores. Uma vez que esta atividade é responsável por até 50% do custo total do desenvolvimento, os pesquisadores buscam minimizar o custo dos testes sem comprometer a qualidade do software. Os primeiros trabalhos abordando atividades de Teste de Software como problemas de otimização surgiram na década de 70. Este trabalho tem por objetivo realizar uma revisão do estado-da-arte das técnicas e algoritmos de otimização desenvolvidos para teste de software, estendendo um trabalho anterior, com a revisão de 415 artigos da área. É, também, apresentada uma classificação de tais trabalhos quanto aos tipos de métricas, algoritmos de otimização e outras características dos problemas inerentes ao teste de software.

4
  • HUDSON GEOVANE DE MEDEIROS
  • Investigações sobre Técnicas de Arquivamento para Otimizadores Multiobjetivo

  • Orientador : ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MEMBROS DA BANCA :
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MARCO CESAR GOLDBARG
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • AURORA TRINIDAD RAMIREZ POZO
  • Data: 05/02/2016

  • Mostrar Resumo
  • Problemas multiobjetivo, diferentes daqueles com um único objetivo, possuem, em geral, diversas soluções ótimas, as quais compõem o conjunto Pareto ótimo. Uma classe de algoritmos heurísticos para tais problemas, aqui chamados de otimizadores, produz aproximações deste conjunto. Devido ao grande número de soluções geradas durante a otimização, muitas delas serão descartadas, pois a manutenção e comparação frequente entre todas elas poderia demandar um alto custo de tempo. Como uma alternativa a este problema, muitos otimizadores lidam com arquivos limitados. Um problema que surge nestes casos é a necessidade do descarte de soluções não-dominadas, isto é, ótimas até então. Muitas técnicas foram propostas para lidar com o problema do descarte de soluções não–dominadas e as investigações mostraram que nenhuma delas é completamente capaz de prevenir a deterioração dos arquivos. Este trabalho investiga uma técnica para ser usada em conjunto com as propostas previamente na literatura, a fim de para melhorar a qualidade dos arquivos. A técnica consiste em reciclar periodicamente soluções descartadas. Para verificar se esta ideia pode melhorar o conteúdo dos otimizadores durante a otimização, ela foi implementada em três algoritmos da literatura e testada em diversos problemas. Os resultados mostraram que, quando os otimizadores já conseguem realizar uma boa otimização e resolver os problemas satisfatoriamente, a deterioração é pequena e o método de reciclagem ineficaz. Todavia, em casos em que o otimizador deteriora significativamente, a reciclagem conseguiu evitar esta deterioração no conjunto de aproximação.


  • Mostrar Abstract
  • Problemas multiobjetivo, diferentes daqueles com um único objetivo, possuem, em geral, diversas soluções ótimas, as quais compõem o conjunto Pareto ótimo. Uma classe de algoritmos heurísticos para tais problemas, aqui chamados de otimizadores, produz aproximações deste conjunto. Devido ao grande número de soluções geradas durante a otimização, muitas delas serão descartadas, pois a manutenção e comparação frequente entre todas elas poderia demandar um alto custo de tempo. Como uma alternativa a este problema, muitos otimizadores lidam com arquivos limitados. Um problema que surge nestes casos é a necessidade do descarte de soluções não-dominadas, isto é, ótimas até então. Muitas técnicas foram propostas para lidar com o problema do descarte de soluções não–dominadas e as investigações mostraram que nenhuma delas é completamente capaz de prevenir a deterioração dos arquivos. Este trabalho investiga uma técnica para ser usada em conjunto com as propostas previamente na literatura, a fim de para melhorar a qualidade dos arquivos. A técnica consiste em reciclar periodicamente soluções descartadas. Para verificar se esta ideia pode melhorar o conteúdo dos otimizadores durante a otimização, ela foi implementada em três algoritmos da literatura e testada em diversos problemas. Os resultados mostraram que, quando os otimizadores já conseguem realizar uma boa otimização e resolver os problemas satisfatoriamente, a deterioração é pequena e o método de reciclagem ineficaz. Todavia, em casos em que o otimizador deteriora significativamente, a reciclagem conseguiu evitar esta deterioração no conjunto de aproximação.

5
  • GUILHERME FERNANDES DE ARAÚJO
  • Algoritmos Meta-heurísticos Para a Solução do Problema do Caixeiro Viajante com Caronas Múltiplas

     

  • Orientador : MARCO CESAR GOLDBARG
  • MEMBROS DA BANCA :
  • MARCO CESAR GOLDBARG
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • LUCÍDIO DOS ANJOS FORMIGA CABRAL
  • Data: 12/02/2016

  • Mostrar Resumo
  • O Problema do Caixeiro Viajante com Caronas Múltiplas (PCV-MCa) é uma classe do Caixeiro Viajante Capacitado que apresenta a possibilidade de compartilhamento de assentos para passageiros aproveitando os deslocamentos do caixeiro entre as localidades do ciclo. O caixeiro divide o custo do trajeto com os passageiros embarcados. O modelo pode representar uma situação real em que, por exemplo, motoristas estão dispostos a compartilhas trechos de sua viagem com turistas que pretendem se deslocar entre duas localidades visitadas pela rota do motorista, aceitando compartilhar o veículo com outros indivíduos e visitando outras localidades do ciclo.


  • Mostrar Abstract
  • O Problema do Caixeiro Viajante com Caronas Múltiplas (PCV-MCa) é uma classe do Caixeiro Viajante Capacitado que apresenta a possibilidade de compartilhamento de assentos para passageiros aproveitando os deslocamentos do caixeiro entre as localidades do ciclo. O caixeiro divide o custo do trajeto com os passageiros embarcados. O modelo pode representar uma situação real em que, por exemplo, motoristas estão dispostos a compartilhas trechos de sua viagem com turistas que pretendem se deslocar entre duas localidades visitadas pela rota do motorista, aceitando compartilhar o veículo com outros indivíduos e visitando outras localidades do ciclo.

6
  • RAYRON VICTOR MEDEIROS DE ARAUJO
  • A probabilistic analysis of the biometrics menagerie existence: a case study in fingerprint data

  • Orientador : MARJORY CRISTIANY DA COSTA ABREU
  • MEMBROS DA BANCA :
  • BRUNO MOTTA DE CARVALHO
  • MARJORY CRISTIANY DA COSTA ABREU
  • DANIEL SABINO AMORIM DE ARAUJO
  • GEORGE DARMITON DA CUNHA CAVALCANTI
  • Data: 18/02/2016

  • Mostrar Resumo
  • Until recently the use of biometrics was restricted to high-security environments and criminal identification applications, for economic and technological reasons. However, in recent years, biometric authentication has become part of daily lives of people. The large scale use of biometrics has shown that users within the system may have different degrees of accuracy. Some people may have trouble authenticating, while others may be particularly vulnerable to imitation. Recent studies have investigated and identified these types of users, giving them the names of animals: Sheep, Goats, Lambs, Wolves, Doves, Chameleons, Worms and Phantoms. The aim of this study is to evaluate the existence of these users types in a database of fingerprints and propose a new way of investigating them, based on the performance of verification between subjects samples. Once introduced some basic concepts in biometrics and fingerprint, we present the biometric menagerie and how to evaluate them.


  • Mostrar Abstract
  • Until recently the use of biometrics was restricted to high-security environments and criminal identification applications, for economic and technological reasons. However, in recent years, biometric authentication has become part of daily lives of people. The large scale use of biometrics has shown that users within the system may have different degrees of accuracy. Some people may have trouble authenticating, while others may be particularly vulnerable to imitation. Recent studies have investigated and identified these types of users, giving them the names of animals: Sheep, Goats, Lambs, Wolves, Doves, Chameleons, Worms and Phantoms. The aim of this study is to evaluate the existence of these users types in a database of fingerprints and propose a new way of investigating them, based on the performance of verification between subjects samples. Once introduced some basic concepts in biometrics and fingerprint, we present the biometric menagerie and how to evaluate them.

7
  • LEANDRO DE ALMEIDA MELO
  • Uma proposta de indicadores para o acompanhamento de alunos em projetos de desenvolvimento colaborativo de software com foco no desenvolvimento de habilidades transversais

  • Orientador : FERNANDO MARQUES FIGUEIRA FILHO
  • MEMBROS DA BANCA :
  • FERNANDO MARQUES FIGUEIRA FILHO
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • ANDRE MAURICIO CUNHA CAMPOS
  • IGOR FABIO STEINMACHER
  • Data: 22/02/2016

  • Mostrar Resumo
  • Habilidades transversais e práticas de desenvolvimento em projetos foram identificadas como as principais deficiências dos egressos de cursos de computação. Essa problemática motivou a realização de uma pesquisa qualitativa sobre os desafios encontrados por professores desses cursos na condução, acompanhamento e avaliação de projetos colaborativos de desenvolvimento de software. Dentre os desafios identificados, destacam-se as dificuldades para acompanhar e avaliar a participação dos alunos em projetos acadêmicos. Nesse contexto, uma segunda pesquisa de natureza quantitativa foi realizada com o objetivo mapear habilidades transversais dos alunos a um conjunto de indicadores que podem ser extraídos a partir de repositórios de software usando técnicas de mineração de dados. Tais indicadores visam auxiliar o professor no acompanhamento de habilidades transversais, tais como: a participação no trabalho em equipe, a liderança, resolução de problemas e o ritmo de comunicação durante projetos. Para isto, uma abordagem de avaliação por pares foi aplicada em uma turma de desenvolvimento colaborativo do curso de Engenharia de Software da Universidade Federal do Rio Grande do Norte (UFRN). Essa pesquisa apresenta um estudo de correlação entre os scores das habilidades transversais dos alunos e os indicadores baseados na mineração de repositórios de software. O objetivo da pesquisa é melhorar a compreensão das dinâmicas de trabalho em projetos colaborativos de estudantes, assim como incentivar o desenvolvimento de habilidades transversais que são exigidas pela indústria de desenvolvimento de software.


  • Mostrar Abstract
  • Habilidades transversais e práticas de desenvolvimento em projetos foram identificadas como as principais deficiências dos egressos de cursos de computação. Essa problemática motivou a realização de uma pesquisa qualitativa sobre os desafios encontrados por professores desses cursos na condução, acompanhamento e avaliação de projetos colaborativos de desenvolvimento de software. Dentre os desafios identificados, destacam-se as dificuldades para acompanhar e avaliar a participação dos alunos em projetos acadêmicos. Nesse contexto, uma segunda pesquisa de natureza quantitativa foi realizada com o objetivo mapear habilidades transversais dos alunos a um conjunto de indicadores que podem ser extraídos a partir de repositórios de software usando técnicas de mineração de dados. Tais indicadores visam auxiliar o professor no acompanhamento de habilidades transversais, tais como: a participação no trabalho em equipe, a liderança, resolução de problemas e o ritmo de comunicação durante projetos. Para isto, uma abordagem de avaliação por pares foi aplicada em uma turma de desenvolvimento colaborativo do curso de Engenharia de Software da Universidade Federal do Rio Grande do Norte (UFRN). Essa pesquisa apresenta um estudo de correlação entre os scores das habilidades transversais dos alunos e os indicadores baseados na mineração de repositórios de software. O objetivo da pesquisa é melhorar a compreensão das dinâmicas de trabalho em projetos colaborativos de estudantes, assim como incentivar o desenvolvimento de habilidades transversais que são exigidas pela indústria de desenvolvimento de software.

8
  • MÁRIO ANDRADE VIEIRA DE MELO NETO
  • Uma Plataforma Adaptável para Localização em Ambientes Internos 

  • Orientador : GIBEON SOARES DE AQUINO JUNIOR
  • MEMBROS DA BANCA :
  • GIBEON SOARES DE AQUINO JUNIOR
  • THAIS VASCONCELOS BATISTA
  • CARLOS ANDRE GUIMARÃES FERRAZ
  • Data: 22/02/2016

  • Mostrar Resumo
  • Os sistemas de localização têm se tornado cada vez mais parte integrante da vida das pessoas. Em ambientes externos, o GPS se apresenta como tecnologia padrão, largamente difundida e utilizada. No entanto, as pessoas costumam passar a maior parte do seu tempo diário dentro de ambientes internos, como: hospitais, universidades, fábricas, edi- fícios, entre outros. Nesses ambientes, o GPS tem seu funcionamento comprometido não obtendo um posicionamento preciso. Atualmente, para realizar a localização de pessoas ou objetos em ambientes internos não existe nenhuma tecnologia que consiga atingir os mesmos resultados obtidos pelo GPS em ambientes externos. Devido a isso, é necessário considerar a utilização de informações provenientes de diversas fontes fazendo uso de di- ferentes tecnologias. Dessa forma, esse trabalho tem como objetivo geral construir uma plataforma Adaptável para localização ambientes internos. Baseado nesse objetivo, é pro- posta a plataforma Indolor. Essa plataforma tem como objetivos permitir o recebimento de informações provenientes de diferentes fontes, além de realizar o processamento, fusão, armazenamento e disponibilização dessas informações. 


  • Mostrar Abstract
  • Os sistemas de localização têm se tornado cada vez mais parte integrante da vida das pessoas. Em ambientes externos, o GPS se apresenta como tecnologia padrão, largamente difundida e utilizada. No entanto, as pessoas costumam passar a maior parte do seu tempo diário dentro de ambientes internos, como: hospitais, universidades, fábricas, edi- fícios, entre outros. Nesses ambientes, o GPS tem seu funcionamento comprometido não obtendo um posicionamento preciso. Atualmente, para realizar a localização de pessoas ou objetos em ambientes internos não existe nenhuma tecnologia que consiga atingir os mesmos resultados obtidos pelo GPS em ambientes externos. Devido a isso, é necessário considerar a utilização de informações provenientes de diversas fontes fazendo uso de di- ferentes tecnologias. Dessa forma, esse trabalho tem como objetivo geral construir uma plataforma Adaptável para localização ambientes internos. Baseado nesse objetivo, é pro- posta a plataforma Indolor. Essa plataforma tem como objetivos permitir o recebimento de informações provenientes de diferentes fontes, além de realizar o processamento, fusão, armazenamento e disponibilização dessas informações. 

9
  • JOILSON VIDAL ABRANTES
  • Especificação e Monitoramento Dinâmico da Política de Tratamento de Exceções

  • Orientador : ROBERTA DE SOUZA COELHO
  • MEMBROS DA BANCA :
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • Felipe Alves Pereira Pinto
  • ROBERTA DE SOUZA COELHO
  • RODRIGO BONIFACIO DE ALMEIDA
  • Data: 25/02/2016

  • Mostrar Resumo
  • A política de tratamento de exceções de um sistema compreende o conjunto de regras de design que especificam o comportamento e tratamento das condições excepcionais, ou seja, define como as exceções devem ser manuseadas e disparadas. Essa política geralmente não é documentada e fica definida implicitamente pelo arquiteto do sistema. Por essa razão os desenvolvedores podem pensar que apenas inserindo blocos try-cach em todos locais onde exceções podem potencialmente ser lançadas estão lidando adequadamente com as condições excepcionais de um sistema. Porém este comportamento pode transformar o tratamento das condições excepcionais em uma generalização do mecanismo "goto", tornando o programa mais complexo e menos confiável. Este trabalho propõe uma linguagem específica de domínio, chamada ECL (Exception Contract Language) para especificar a política de tratamento de exceções e uma ferramenta de monitoramento em tempo de execução que verifica dinamicamente a política de tratamento de exceções. Essa ferramenta é chamada de DAEH (Dynamic Analysis of Exception Handling e é implementada na forma de uma biblioteca de aspectos, que pode ser adicionada a uma aplicação Java sem a necessidade de alterar o código fonte da mesma. Esta abordagem foi aplicada a dois sistemas WEB, a quatro versões do framework JUnit e a uma aplicaticação móvel. Os resultados indicam que esta abordagem pode ser usada para expressar e automaticamente verificar a política de tratamento de exceções de sistemas, e, consequentemente apoiar o desenvolvimento de sistemas Java mais robustos.


  • Mostrar Abstract
  • A política de tratamento de exceções de um sistema compreende o conjunto de regras de design que especificam o comportamento e tratamento das condições excepcionais, ou seja, define como as exceções devem ser manuseadas e disparadas. Essa política geralmente não é documentada e fica definida implicitamente pelo arquiteto do sistema. Por essa razão os desenvolvedores podem pensar que apenas inserindo blocos try-cach em todos locais onde exceções podem potencialmente ser lançadas estão lidando adequadamente com as condições excepcionais de um sistema. Porém este comportamento pode transformar o tratamento das condições excepcionais em uma generalização do mecanismo "goto", tornando o programa mais complexo e menos confiável. Este trabalho propõe uma linguagem específica de domínio, chamada ECL (Exception Contract Language) para especificar a política de tratamento de exceções e uma ferramenta de monitoramento em tempo de execução que verifica dinamicamente a política de tratamento de exceções. Essa ferramenta é chamada de DAEH (Dynamic Analysis of Exception Handling e é implementada na forma de uma biblioteca de aspectos, que pode ser adicionada a uma aplicação Java sem a necessidade de alterar o código fonte da mesma. Esta abordagem foi aplicada a dois sistemas WEB, a quatro versões do framework JUnit e a uma aplicaticação móvel. Os resultados indicam que esta abordagem pode ser usada para expressar e automaticamente verificar a política de tratamento de exceções de sistemas, e, consequentemente apoiar o desenvolvimento de sistemas Java mais robustos.

10
  • FABIO DE SOUSA LEAL
  • SLA-Based Guidelines for Database Transitioning 

  • Orientador : MARTIN ALEJANDRO MUSICANTE
  • MEMBROS DA BANCA :
  • MARTIN ALEJANDRO MUSICANTE
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • GENOVEVA VARGAS SOLAR
  • PLACIDO ANTONIO DE SOUZA NETO
  • Data: 26/02/2016

  • Mostrar Resumo
  •  

    Resumo

    Engenharia de Software Baseada em Componentes (CBSE) e Arquitetura Orientada a Serviços (SOA) tornaram-se formas populares de se desenvolver software nos últimos anos. Durante o ciclo de vida de um software, vários componentes e serviços podem ser desenvolvidos, evoluídos e substituídos. Em ambientes de produção, a substituição

    de componentes essenciais - como os que envolvem bancos de dados - é uma operação delicada, onde várias restrições e stakeholders devem ser considerados.

    Service-Level agreement (acordo de nível de serviço - SLA), de acordo com o glossário oficial da ITIL v3 , é “um acordo entre um provedor de serviço de TI e um cliente. O acordo consiste em um conjunto de restrições mensuráveis que um prestador de serviços deve garantir aos seus clientes.”. Em termos práticos, um SLA é um documento que um prestador de serviço oferece aos seus consumidores garantindo níveis mínimos de qualidade de serviço (QoS).

    Este trabalho busca avaliar a utilização de SLAs para guiar o processo de transição de bancos de dados em ambientes de produção. Em particular, propomos um conjunto de guidelines baseados em SLAs para apoiar decisões migrações de bancos de dados rela- cionais (RDBMS) para bancos NoSQL. Nosso trabalho é validado por estudos de caso. 


  • Mostrar Abstract
  •  

    Resumo

    Engenharia de Software Baseada em Componentes (CBSE) e Arquitetura Orientada a Serviços (SOA) tornaram-se formas populares de se desenvolver software nos últimos anos. Durante o ciclo de vida de um software, vários componentes e serviços podem ser desenvolvidos, evoluídos e substituídos. Em ambientes de produção, a substituição

    de componentes essenciais - como os que envolvem bancos de dados - é uma operação delicada, onde várias restrições e stakeholders devem ser considerados.

    Service-Level agreement (acordo de nível de serviço - SLA), de acordo com o glossário oficial da ITIL v3 , é “um acordo entre um provedor de serviço de TI e um cliente. O acordo consiste em um conjunto de restrições mensuráveis que um prestador de serviços deve garantir aos seus clientes.”. Em termos práticos, um SLA é um documento que um prestador de serviço oferece aos seus consumidores garantindo níveis mínimos de qualidade de serviço (QoS).

    Este trabalho busca avaliar a utilização de SLAs para guiar o processo de transição de bancos de dados em ambientes de produção. Em particular, propomos um conjunto de guidelines baseados em SLAs para apoiar decisões migrações de bancos de dados rela- cionais (RDBMS) para bancos NoSQL. Nosso trabalho é validado por estudos de caso. 

11
  • MANOEL PEDRO DE MEDEIROS NETO
  • Veículos Aéreos Não Tripulados e Sistema de Entrega: Estudo, Desenvolvimento e Testes

  • Orientador : LEONARDO CUNHA DE MIRANDA
  • MEMBROS DA BANCA :
  • EDUARDO BRAULIO WANDERLEY NETTO
  • LEONARDO CUNHA DE MIRANDA
  • MONICA MAGALHAES PEREIRA
  • UIRA KULESZA
  • Data: 29/02/2016

  • Mostrar Resumo
  • Veículos não tripulados estão cada vez mais presentes no cotidiano das empresas e das pessoas, pois esse tipo de veículo está de forma crescente desempenhando atividades que anteriormente eram apenas executadas por seres humanos. No entanto, para se compreender melhor o potencial de veículos não tripulados, é importante conhecer seus tipos, características, aplicações, limitações e desafios, pois somente com esse conhecimento pode-se entender as potencialidades do uso de veículos dessa natureza em aplicações variadas. Nesse contexto, na primeira parte desta pesquisa foram estudados os diferentes tipos de veículos não tripulados, i.e. terrestres, aquáticos, aéreos e híbridos. Durante a segunda fase da pesquisa, foi realizado um aprofundamento tendo como foco as interfaces de usuário para controle dos veículos aéreos não tripulados. Esses dois levantamentos iniciais do domínio, permitiram a identificação de desafios e oportunidades para o desenvolvimento de novas aplicações para esse contexto. Com base no conhecimento adquirido com esses estudos, então, foi desenvolvido um sistema de entrega automatizada de objetos para o campus de Universidades, denominado de PostDrone University, e desenvolvido um veículo aéreo não tripulado para realizar as entregas, denominado de PostDrone University UAV K-263. O sistema possui uma interface de usuário de fácil uso, que não requer conhecimentos de domínios específicos como aviação ou controle de aeronaves para sua operação. Por fim, diversos testes foram realizados com o intuito de validar e identificar as limitações da solução desenvolvida nesta pesquisa.


  • Mostrar Abstract
  • Veículos não tripulados estão cada vez mais presentes no cotidiano das empresas e das pessoas, pois esse tipo de veículo está de forma crescente desempenhando atividades que anteriormente eram apenas executadas por seres humanos. No entanto, para se compreender melhor o potencial de veículos não tripulados, é importante conhecer seus tipos, características, aplicações, limitações e desafios, pois somente com esse conhecimento pode-se entender as potencialidades do uso de veículos dessa natureza em aplicações variadas. Nesse contexto, na primeira parte desta pesquisa foram estudados os diferentes tipos de veículos não tripulados, i.e. terrestres, aquáticos, aéreos e híbridos. Durante a segunda fase da pesquisa, foi realizado um aprofundamento tendo como foco as interfaces de usuário para controle dos veículos aéreos não tripulados. Esses dois levantamentos iniciais do domínio, permitiram a identificação de desafios e oportunidades para o desenvolvimento de novas aplicações para esse contexto. Com base no conhecimento adquirido com esses estudos, então, foi desenvolvido um sistema de entrega automatizada de objetos para o campus de Universidades, denominado de PostDrone University, e desenvolvido um veículo aéreo não tripulado para realizar as entregas, denominado de PostDrone University UAV K-263. O sistema possui uma interface de usuário de fácil uso, que não requer conhecimentos de domínios específicos como aviação ou controle de aeronaves para sua operação. Por fim, diversos testes foram realizados com o intuito de validar e identificar as limitações da solução desenvolvida nesta pesquisa.

12
  • FLADSON THIAGO OLIVEIRA GOMES
  • Uma Abordagem para Análise de Cobertura de Código em Cenários de Evolução

  • Orientador : UIRA KULESZA
  • MEMBROS DA BANCA :
  • UIRA KULESZA
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • CARLOS EDUARDO DA SILVA
  • ELDER JOSÉ REIOLI CIRILO
  • Data: 03/03/2016

  • Mostrar Resumo
  • Atualmente, a etapa de testes no processo de desenvolvimento de software tornou-se imprescindível para garantir a confiabilidade e qualidade do código de sistemas de software. Entretanto, as constantes evoluções na arquitetura e código de um sistema, criam sérios desafios para os desenvolvedores e testadores, uma vez que modificações podem não se comportar como o esperado. Neste contexto surge a necessidade de ferramentas e mecanismos que diminuam o impacto negativo gerado pelas constantes evoluções do sistema. Dentre as ferramentas que analisam esse impacto, poucas apresentam os fluxos de execução entre métodos que foram afetados e nenhuma apresenta como resultado se esses fluxos afetados pela evolução estão ou não cobertos pelos testes. Assim, este trabalho apresenta uma abordagem que tem como objetivo principal: (i) analisar a cobertura de código levando em consideração os fluxos de chamadas existentes no sistema que foram afetados por evoluções de código, assim como os fluxos de execução oriundos da execução dos testes; (ii) indicar quais fluxos de chamadas do sistema que possuem métodos modificados e não estão sendo cobertos pelos testes atualmente e que, portanto, poderiam ser considerados para melhorar a qualidade dos testes; e (iii) indicar se houve degradação na qualidade da suíte de testes. Um estudo empírico foi realizado envolvendo a análise dos testes de 6 sistemas open-source existentes e os resultados mostram que a abordagem conseguiu identificar entre 19% e 92% de fluxos de execução afetados por mudanças que não estão cobertos e ainda que 3 dos 6 sistemas tiveram uma degradação na qualidade dos testes no que se refere aos fluxos de chamadas afetados pela evolução.


  • Mostrar Abstract
  • Nowadays, the test activties in the software development process
    became fundamental to ensure the reliability and quality of software
    systems code. The frequent evolution in the system's architecture and
    code creates strong challenges to the developers and testers since the
    modifications cannot behave as expected. In this context, there is a
    need of tools and mechanisms that decrease the negative impact
    generated by these frequent system evolution. There are a few existing
    tools that shows the execution flows of methods that are affected by
    the evolutions, however most of them do not show if those affected
    flows are or not covered by tests. This work presents an approach that
    has as the main goals: (i) to analyze the code coverage taking into
    consideration the existing system execution flows that were affected
    by system evolution; (ii) to indicate which system execution flows
    that have changed methods and are not covered by the existing
    automated tests and, therefore, could be considered to improve the
    system quality through the test regression; and (iii) to indicate if
    there is a test quality degradation in terms of non-covered execution
    flows. Our work has also performed an empirical study that analyzes 6
    open-source systems using the proposed approach. The study results
    identified that between 19% and 92% execution flows of those
    open-source systems are affected by code evolution changes and are not
    covered by automated tests. In addition, it was detected that 3 of the
    6 systems had a test quality degradation in terms of non-covered
    execution flows.

13
  • HULIANE MEDEIROS DA SILVA
  • Otimização de Comitês de Agrupamento Usando o Algoritmo Coral Reefs Optimization

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • MEMBROS DA BANCA :
  • ANNE MAGALY DE PAULA CANUTO
  • BRUNO MOTTA DE CARVALHO
  • FLAVIUS DA LUZ E GORGONIO
  • JOAO CARLOS XAVIER JUNIOR
  • ARAKEN DE MEDEIROS SANTOS
  • Data: 04/03/2016

  • Mostrar Resumo
  • O presente trabalho está inserido na linha de pesquisa de aprendizado de máquina, que é um campo de pesquisa associado à Inteligência Artificial e dedicado ao desenvolvimento de técnicas que, permitem ao computador aprender com experiências passadas. Em aprendizado de máquina, há diferentes tarefas de aprendizado que pertencem a determinado paradigma de aprendizado, entre elas podemos citar agrupamento de dados, que pertencente ao paradigma de aprendizado não supervisionado. Diversos algoritmos de agrupamento vêm sendo utilizados com sucesso em diferentes aplicações. No entanto, cada algoritmo possui suas próprias características e limitações, que podem gerar diferentes soluções para um mesmo conjunto de dados. Dessa forma, combinar vários métodos de agrupamento (comitês de agrupamento), capaz de aproveitar as características de cada algoritmo é uma abordagem bastante utilizada na tentativa de superar as limitações de cada técnica de agrupamento. Nesse contexto, diversas abordagens têm sido propostas na literatura no intuito de otimizar, ou seja, de melhorar cada vez mais as soluções encontradas. Dessa forma, o objetivo deste trabalho é propor uma abordagem para otimização de comitês de agrupamento, por meio da função consenso, utilizando técnicas inspiradas na natureza. Essa abordagem consiste na formação de um comitê de agrupamento heterogêneo, de modo que as partições iniciais são combinadas por um método que utilizada o algoritmo de otimização Coral Reefs Optimization com o método de co-associação, resultando em uma partição final. Essa estratégia é avaliada através dos índices de avaliação de agrupamento, Dunn, Calinski-Harabasz, Dom e Jaccard, no intuito de analisar a viabilidade da abordagem proposta. Finalmente, o desempenho da abordagem proposta é comparado com duas outras abordagens, são elas:  algoritmo genético com o método de co-associação e o método de co-associação tradicional. Essa comparação é feita através da utilização de testes estatísticos, especificamente teste de Friedman. 


  • Mostrar Abstract
  • O presente trabalho está inserido na linha de pesquisa de aprendizado de máquina, que é um campo de pesquisa associado à Inteligência Artificial e dedicado ao desenvolvimento de técnicas que, permitem ao computador aprender com experiências passadas. Em aprendizado de máquina, há diferentes tarefas de aprendizado que pertencem a determinado paradigma de aprendizado, entre elas podemos citar agrupamento de dados, que pertencente ao paradigma de aprendizado não supervisionado. Diversos algoritmos de agrupamento vêm sendo utilizados com sucesso em diferentes aplicações. No entanto, cada algoritmo possui suas próprias características e limitações, que podem gerar diferentes soluções para um mesmo conjunto de dados. Dessa forma, combinar vários métodos de agrupamento (comitês de agrupamento), capaz de aproveitar as características de cada algoritmo é uma abordagem bastante utilizada na tentativa de superar as limitações de cada técnica de agrupamento. Nesse contexto, diversas abordagens têm sido propostas na literatura no intuito de otimizar, ou seja, de melhorar cada vez mais as soluções encontradas. Dessa forma, o objetivo deste trabalho é propor uma abordagem para otimização de comitês de agrupamento, por meio da função consenso, utilizando técnicas inspiradas na natureza. Essa abordagem consiste na formação de um comitê de agrupamento heterogêneo, de modo que as partições iniciais são combinadas por um método que utilizada o algoritmo de otimização Coral Reefs Optimization com o método de co-associação, resultando em uma partição final. Essa estratégia é avaliada através dos índices de avaliação de agrupamento, Dunn, Calinski-Harabasz, Dom e Jaccard, no intuito de analisar a viabilidade da abordagem proposta. Finalmente, o desempenho da abordagem proposta é comparado com duas outras abordagens, são elas:  algoritmo genético com o método de co-associação e o método de co-associação tradicional. Essa comparação é feita através da utilização de testes estatísticos, especificamente teste de Friedman. 

14
  • PORFÍRIO DANTAS GOMES
  • Um Serviço de Descoberta Ciente de Contexto para Internet das Coisas

  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • FLAVIA COIMBRA DELICATO
  • GIBEON SOARES DE AQUINO JUNIOR
  • PAULO DE FIGUEIREDO PIRES
  • THAIS VASCONCELOS BATISTA
  • Data: 04/04/2016

  • Mostrar Resumo
  • A Internet das Coisas (do inglês Internet of Things - IoT) é um paradigma emergente caracterizado por uma miríade de dispositivos heterogêneos conectados à Internet. Porém, a alta heterogeneidade e a larga distribuição dos dispositivos disponíveis em IoT dificultam a implantação desse paradigma, fazendo com que máquinas e usuários enfrentem desafios para encontrar, selecionar, e usar recursos de forma rápida, confiável, e amigável. Nesse contexto, serviços de descoberta desempenham um papel chave, permitindo que clientes (e.g., plataformas de middleware, usuários finais, e aplicações) recuperem recursos através da especificação de critérios de busca contendo uma série de atributos, tais como o tipo do recurso, capacidades, localização, parâmetros de qualidade de contexto (Quality of Context - QoC), etc. Esta dissertação introduz o QoDisco, um serviço de descoberta distribuído que permite buscas por múltiplos atributos, buscas em intervalos, e operações de busca síncrona e assíncrona. Além disso, o QoDisco inclui um modelo baseado em ontologias para a descrição semântica de recursos (i.e., sensores e atuadores), serviços, e dados capturados por sensores. Esta dissertação apresenta, em detalhes, (i) a arquitetura do QoDisco, (ii) seu modelo de informação, (iii) a implementação de um protótipo, (iv) e a integração do QoDisco com uma plataforma de middleware para IoT, a EcoDiF. Por fim, este trabalho apresenta uma prova de conceito em um cenário de poluição urbana e uma avaliação qualitativa do desempenho do procedimento de busca do QoDisco.


  • Mostrar Abstract
  • A Internet das Coisas (do inglês Internet of Things - IoT) é um paradigma emergente caracterizado por uma miríade de dispositivos heterogêneos conectados à Internet. Porém, a alta heterogeneidade e a larga distribuição dos dispositivos disponíveis em IoT dificultam a implantação desse paradigma, fazendo com que máquinas e usuários enfrentem desafios para encontrar, selecionar, e usar recursos de forma rápida, confiável, e amigável. Nesse contexto, serviços de descoberta desempenham um papel chave, permitindo que clientes (e.g., plataformas de middleware, usuários finais, e aplicações) recuperem recursos através da especificação de critérios de busca contendo uma série de atributos, tais como o tipo do recurso, capacidades, localização, parâmetros de qualidade de contexto (Quality of Context - QoC), etc. Esta dissertação introduz o QoDisco, um serviço de descoberta distribuído que permite buscas por múltiplos atributos, buscas em intervalos, e operações de busca síncrona e assíncrona. Além disso, o QoDisco inclui um modelo baseado em ontologias para a descrição semântica de recursos (i.e., sensores e atuadores), serviços, e dados capturados por sensores. Esta dissertação apresenta, em detalhes, (i) a arquitetura do QoDisco, (ii) seu modelo de informação, (iii) a implementação de um protótipo, (iv) e a integração do QoDisco com uma plataforma de middleware para IoT, a EcoDiF. Por fim, este trabalho apresenta uma prova de conceito em um cenário de poluição urbana e uma avaliação qualitativa do desempenho do procedimento de busca do QoDisco.

15
  • VÍTOR ALCÂNTARA DE ALMEIDA
  • WPTrans: Um Assistente para Verificação de Programas em Frama-C.

  • Orientador : DAVID BORIS PAUL DEHARBE
  • MEMBROS DA BANCA :
  • UMBERTO SOUZA DA COSTA
  • DAVID BORIS PAUL DEHARBE
  • PLACIDO ANTONIO DE SOUZA NETO
  • RICHARD WALTER ALAIN BONICHON
  • Data: 29/04/2016

  • Mostrar Resumo
  • A presente dissertação descreve uma extensão para a plataforma Frama-C e o plugin WP:
    o WPTrans. Essa extensão permite a manipulação, através de regras de inferência, das
    obrigações de prova geradas pelo WP, com a possibilidade das mesmas serem enviadas,
    em qualquer etapa da modificação, a solucionadores SMT e assistentes de prova. Algumas
    obrigações de prova podem ser validadas automaticamente, enquanto outras são muito
    complexas para os solucionadores SMT, exigindo uma prova manual pelo desenvolvedor,
    através dos assistentes de prova. Contudo, a segunda abordagem geralmente requer do
    usuário uma experiência significativa em estratégias de prova. Alguns assistentes oferecem
    comunicação com provadores automáticos, entretanto, esta ligação pode ser complexa
    ou incompleta, restando ao usuário apenas a prova manual. O objetivo deste plugin é interligar
    os dois tipos de ferramentas de modo preciso e completo, com uma linguagem
    simples para a manipulação. Assim, o usuário pode simplificar suficientemente as obrigações de
    prova para que possam ser validadas por qualquer outro solucionador SMT.
    Não obstante, a extensão é interligada diretamente ao WP, facilitando a instalação do
    plugin no Frama-C. Esta extensão também é uma porta de entrada para outras possíveis
    funcionalidades, sendo as mesmas discutidas neste documento.


  • Mostrar Abstract
  • A presente dissertação descreve uma extensão para a plataforma Frama-C e o plugin WP:
    o WPTrans. Essa extensão permite a manipulação, através de regras de inferência, das
    obrigações de prova geradas pelo WP, com a possibilidade das mesmas serem enviadas,
    em qualquer etapa da modificação, a solucionadores SMT e assistentes de prova. Algumas
    obrigações de prova podem ser validadas automaticamente, enquanto outras são muito
    complexas para os solucionadores SMT, exigindo uma prova manual pelo desenvolvedor,
    através dos assistentes de prova. Contudo, a segunda abordagem geralmente requer do
    usuário uma experiência significativa em estratégias de prova. Alguns assistentes oferecem
    comunicação com provadores automáticos, entretanto, esta ligação pode ser complexa
    ou incompleta, restando ao usuário apenas a prova manual. O objetivo deste plugin é interligar
    os dois tipos de ferramentas de modo preciso e completo, com uma linguagem
    simples para a manipulação. Assim, o usuário pode simplificar suficientemente as obrigações de
    prova para que possam ser validadas por qualquer outro solucionador SMT.
    Não obstante, a extensão é interligada diretamente ao WP, facilitando a instalação do
    plugin no Frama-C. Esta extensão também é uma porta de entrada para outras possíveis
    funcionalidades, sendo as mesmas discutidas neste documento.

16
  • THOMAS FILIPE DA SILVA DINIZ
  • Self-adaptive Authorisation in Cloud-based Systems

  • Orientador : NELIO ALESSANDRO AZEVEDO CACHO
  • MEMBROS DA BANCA :
  • NELIO ALESSANDRO AZEVEDO CACHO
  • THAIS VASCONCELOS BATISTA
  • CARLOS EDUARDO DA SILVA
  • CARLOS ANDRE GUIMARÃES FERRAZ
  • Data: 02/05/2016

  • Mostrar Resumo
  • Apesar dos grandes avanços realizados visando a proteção de plataformas de nuvem contra
    ataques maliciosos, pouco tem sido feito em relação a protecção destas plataformas
    contra ameaças internas. Este trabalho olha para este desafio através da introdução de
    auto-adaptação como um mecanismo para lidar com ameaças internas em plataformas de
    nuvem, e isso será demonstrado no contexto de mecanismos de autorização da plataforma
    OpenStack. OpenStack é uma plataforma popular nuvem que se baseia principalmente no
    Keystone, o componente de gestão de identidade, para controlar o acesso a seus recursos.
    A utilização de autoaadaptação para o manuseio de ameaças internas foi motivada pelo
    fato de que a autoadaptação tem se mostrado bastante eficaz para lidar com incerteza em
    uma ampla gama de aplicações. Ataques internos maliciosos se tornaram uma das principais
    causas de preocupação, pois mesmo mal intencionados, os usuários podem ter acesso
    aos recursos e abusar de uma grande quantidade de informações. A principal contribuição
    deste trabalho é a definição de uma solução arquitetural que incorpora autoadaptação nos
    mecanismos de autorização do OpenStack, a fim de lidar com ameaças internas. Para isso,
    foram identificados e analisados diversos cenários de ameaças internas no contexto desta
    plataforma, e desenvolvido um protótipo para experimentar e avaliar o impacto destes
    cenários nos sistemas de autorização em plataformas em nuvem.


  • Mostrar Abstract
  • Although major advances have been made in protection of cloud platforms against malicious attacks, little has been done regarding the protection of these platforms against insider threats.
    This paper looks into this challenge by introducing self-adaptation as a mechanism to handle insider threats in cloud platforms, and this will be demonstrated in the context of OpenStack authorisation.
    OpenStack is a popular cloud platform that relies on Keystone, its identity management component, for controlling access to its resources.
    The use of self-adaptation for handling insider threats has been motivated by the fact that self-adaptation has been shown to be quite effective in dealing with uncertainty in a wide range of applications.
    Malicious insider attacks have become a major cause for concern since legitimate, though malicious, users might have access, in case of theft, to a large amount of information.
    The key contribution of this paper is the definition of an architectural solution that incorporates self-adaptation into OpenStack in order to deal with insider threats.
    For that, we have identified and analysed several insider threats scenarios in the context of the OpenStack cloud platform, and have developed a prototype that was used for experimenting and evaluating the impact of these scenarios upon the self-adaptive authorisation system for the cloud platforms.

17
  • ADDSON ARAUJO DA COSTA
  • SALSA - A Simple Automatic Lung Segmentation Algorithm

  • Orientador : BRUNO MOTTA DE CARVALHO
  • MEMBROS DA BANCA :
  • BRUNO MOTTA DE CARVALHO
  • ANNE MAGALY DE PAULA CANUTO
  • RAFAEL BESERRA GOMES
  • WILFREDO BLANCO FIGUEROLA
  • Data: 21/07/2016

  • Mostrar Resumo
  • A segmentação precisa de tecidos pulmonares é de grande importância em várias tarefas de diagnóstico. Um simples e rápido algoritmo para segmentação de tecidos pulmonares é proposto aqui. O método combina várias operações simples de processamento de imagem para alcançar a segmentação final e pode ser dividido em dois problemas. O primeiro é a segmentação pulmonar, que consiste na identificação de regiões como fundo, traqueia, veias, pulmões esquerdo e direito, que é um processo dificultado pela presença de ruído, artefatos, baixo contraste, e doenças e remoções cirúrgicas. O segundo é a segmentação dos lóbulos pulmonares, onde o pulmão esquerdo deve ser dividido em dois lóbulos, superior e inferior, e o pulmão direito deve ser dividido em três lóbulos, superior, inferior e médio. Essa segundo problema é dificultado devido ao fato de que a membrana que separa os lóbulos, a pleura visceral, ser muito delicada e não ser claramente visível nos exames de tomografia computadorizada, além da ocorrência de procedimentos de lobectomia (remoção cirúrgica de lóbulos), doenças que degradam a qualidade da imagem, ou ruído na aquisição da imagem. Ambos os métodos foram desenvolvidos de forma a tornar todo o procedimento automático, tendo bons resultados já publicados na área de segmentação pulmonar, utilizando a metodologia de teste do desafio de sementação de pulmões LOLA11.


  • Mostrar Abstract
  • The accurate segmentation of pulmonary tissue is of great importance for several diagnostic tasks. A simple and fast algorithm for performing lung segmentation is proposed here. The method combines several simple image processing operations to achieve the final segmentation and can be divided into two problems. The fisrt is the lung segmentation, that identifies regions such as backgroung, trachea, vessels, and left and right lungs, and it is complicated by the presence of noise, artifacts, low contrast and diseases. The second is the lobe segmentation, where the left lung is divided into two lobes, the upper and lower lobes, and the right into three lobes, the upper, middle and lower lobes. This second problem is harder due to the fact that the membranes dividing the lobes, the pleurae, are very thin and are not clearly visualized in the computerized tomography exams, besides the possible occurence of lobectomies (surgical lobe removal), diseases that may degrade the image qulaity, or noise during the image acquisition. Both methods were developed in order to produce an authomatic method, and we have already produced good validated results in the first problem, using the testing methodology of the lung segmentation challenge LOLA11.

     

     

18
  • KELYSON NUNES DOS SANTOS
  • Estudo de Técnicas de Aprendizado de Máquina para Predição de Eventos através de Dados Neurofisiológicos: um estudo de caso com Epilepsia

  • Orientador : AUGUSTO JOSE VENANCIO NETO
  • MEMBROS DA BANCA :
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • AUGUSTO JOSE VENANCIO NETO
  • FABRICIO LIMA BRASIL
  • RENAN CIPRIANO MOIOLI
  • Data: 28/07/2016

  • Mostrar Resumo
  • A predição de eventos a partir de dados neurofisiológicos possui muitas variáveis que devem ser analisadas em diferentes momentos, desde a aquisição e registro de dados até o pós-processamento dos mesmos. Assim, a escolha do algoritmo que irá processar esses dados é uma etapa muito importante, pois o tempo de processamento e a acurácia do resultado são fatores determinantes para uma ferramenta de auxílio de diagnóstico. A tarefa de classificação e predição também auxilia no entendimento das interações realizadas pelas redes de células cerebrais. Este trabalho realiza o estudo de técnicas de Aprendizado de Máquina com diferentes características para analisar seu impacto na tarefa de predição de eventos a partir de dados neurofisiológicos e propõe o uso de comitês de classificadores de forma a otimizar o desempenho da tarefa de predição através do uso de técnicas de baixo custo computacional


  • Mostrar Abstract
  • Event prediction from neurophysiological data has many variables which must be analyzed in different moments, since data acquisition and registry to its post-processing. Hence, choosing the algorithm that will process these data is a very important step, for processing time and accuracy of results are determinant factors for a diagnosis auxiliary tool. Tasks of classification and prediction also help in understanding brain cell's networks interactions. This work studies Data Mining techniques with different features to analyzing their impact on the task of event prediction from neurophysiological data and purposes use of ensembles to optimize the performance of event prediction task through computational low-cost techniques.

19
  • CAIO FREITAS DE OLIVEIRA
  • Modelos e Algoritmos para o Problema de Planejamento para Produção de Recursos em Jogos de Estratégia de Tempo Real

  • Orientador : ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MEMBROS DA BANCA :
  • CAROLINA DE PAULA ALMEIDA
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • GIVANALDO ROCHA DE SOUZA
  • MARCO CESAR GOLDBARG
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • Data: 05/08/2016

  • Mostrar Resumo
  •  

    Jogos de estratégia em tempo real (RTS) apresentam muitos desafios para a criação de inteligências artificiais. Um destes desafios é criar um plano de ações efetivo dentro de um dado contexto. Um dos jogos utilizados como plataforma para criação de game AIs competitivas é o StarCraft. Tais game AIs têm dificuldade em se adaptar e criar bons planos para combater a estratégia inimiga. Neste trabalho, um novo modelo de escalonamento de tarefas é proposto modelando os problemas de planejamento em jogos RTS. Este modelo considera eventos cíclicos e consiste em resolver um problema multiobjetivo que satisfaz restrições impostas pelo jogo. São considerados recursos, tarefas e eventos cíclicos que traduzem as características do jogo em um caso do problema. O estado inicial do jogo contém as informações sobre os recursos, tarefas incompletas e eventos ativos. A estratégia define quais recursos maximizar ou minimizar e quais restrições são aplicadas aos recursos, bem como o horizonte de projeto. São investigados quatro otimizadores multiobjetivo: NSGA-II e sua variante focada em joelhos, GRASP e Colônia de Formigas. Experimentos com casos baseados em problemas reais de Starcraft são reportados.


  • Mostrar Abstract
  • Real-time strategy (RTS) games hold many challenges in the creation of a game AI. One of those challenges is creating an effective plan for a given context. A game used as platform for experiments and competition of game AIs is StarCraft. Its game AIs have struggled to adapt and create good plans to counter the opponent strategy. In this paper, a new scheduling model is proposed to planning problems on RTS games. This model considers cyclic events and consists in solving a multi-objective problem that satisfies constraints imposed by the game. Resources, tasks and cyclic events that translate the game into an instance of the problem are considered. The initial state contains information about resources, uncompleted tasks and on-going events. The strategy defines which resources to maximize or minimize and which constraints are applied to the resources, as well as to the project horizon. Four multi-objective optimizers are investigated: NSGA-II and its knee variant, GRASP and Ant Colony. Experiments with cases based on real Starcraft problems are reported.

20
  • VALDIGLEIS DA SILVA COSTA
  • Linguagens Lineares Fuzzy

  • Orientador : BENJAMIN RENE CALLEJAS BEDREGAL
  • MEMBROS DA BANCA :
  • ANDERSON PAIVA CRUZ
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • REGIVAN HUGO NUNES SANTIAGO
  • RENATA HAX SANDER REISER
  • Data: 05/08/2016

  • Mostrar Resumo
  • As linguagens formais foram introduzidas no final dos anos 50, e desde então têm sido de grande importância para a  ciência da computação, especialmente para aplicações na análise léxica e sintática, necessárias para o desenvolvimento de compiladores, e também em técnicas de inferência gramaticais. A hierarquia de Chomsky estendida, relaciona as classes de linguagens formais em termos de seu alcance. Além disso, também é possível estabelecer uma relação entre as classes das linguagens formais na hierarquia de Chomsky e formalismos, tais como máquinas de estados (ou autômatos) e gramáticas. Entre essas classes, a classe das línguagens lineares tem pelo menos quatro tipos de "dispositivos" (máquinas de estado) que a caracterizam ou a representam. Entre eles  os λ-autômatos linear não-determinísticos proposto por Bedregal. No final dos anos 60, Lee e Zadeh propôs a noção de  línguagens fuzzy em uma tentativa de preencher a lacuna entre linguagens formais e naturais. Por sua vez, Wee Fu, a fim de capturar a noção de incerteza durante o processo de reconhecimento de cadeias de uma linguagem, introduz o conceito de autómatos fuzzy. Como na teoria clássica, podemos traçar uma relação entre as classes de linguagens fuzzy e autômatos fuzzy. No entanto, diferente da teoria clássica, até agora, não existe um modelo de autômatos fuzzy que compute diretamente apenas línguas lineares fuzzy, ou seja, que se relacione com a classe das línguagens lineares fuzzy diretamente. Portanto, este trabalho propõe a realização de um estudo sobre um modelo de autômatos fuzzy, com base nos λ-autômatos linear não-determinísticos, que reconhecem as línguas lineares fuzzy. Além disso, como no estudo das linguagens formais, a investigação sobre as propriedades de fecho de alguns operadores para classes de linguagens formais é um ponto importante, neste trabalho também vamos investigar quais os operadores difusos (união, intersecção, etc.) que são fechados para a classe das linguagens lineares nebulosos.


  • Mostrar Abstract
  • The formal languages were introduced in the late 50's, and from then it have been of  a great importance in computer science, especially for applications in lexical analysis and syntactic necessary during the development of compilers and also in grammatical inference techniques. The extended  Chomsky hierarchy, relates the mains classes of  formal languages in term of their reach. In addition, also is possible  stablish a relationship between the classes of the formal languages in the Chomsky hierarchy and formalisms such as state  machines  (or automata) and grammars. Among the languages classes in this hierarchy, the  linear languages class have at least four types of  "devices" (state machines) characterizing or representing them. Among them are the non-deterministic linear λ-automata  proposed by Bedregal. At the end of the 60s, Lee and Zadeh proposed the fuzzy languages  in an attempt to bridge the gap between formal and natural languages. In turn, Wee Fu in order to capture the notion of uncertainty during the process recognition of  string of a language, introduces the concept of fuzzy automata. As in classical theory, we can trace a relationship between the classes of fuzzy languages and fuzzy automata. However, different from the classical theory, until now, there is no  fuzzy automata model directly to compute just on the class the fuzzy linear languages, i.e. that relates to the fuzzy linear languages directly. Therefore, this work proposes to conduct a study on a fuzzy automata model, based on the non-deterministic linear λ-automata, which recognize the fuzzy linear languages. Besides that, as in the study of formal languages, the investigation on closure property of some operators on language classes is an important point, in this work we will also investigate which of the fuzzy operators (union, intersection, etc.) that are closed on the classes of fuzzy linear languages.

21
  • FRANCISCO DIOGO OLIVEIRA DE QUEIROZ
  • Analisando o Tratamento de Exceções em Aplicações Android

  • Orientador : ROBERTA DE SOUZA COELHO
  • MEMBROS DA BANCA :
  • FERNANDO MARQUES FIGUEIRA FILHO
  • NELIO ALESSANDRO AZEVEDO CACHO
  • ROBERTA DE SOUZA COELHO
  • RODRIGO BONIFACIO DE ALMEIDA
  • Data: 17/08/2016

  • Mostrar Resumo
  • Aplicações Android tem se tornado cada vez mais populares; e no mesmo ritmo em que cresce o número de aplicações disponíveis, também  cresce o número de usuários afetados pelos crashes de tais aplicações. Para poder lidar com tais condições excepcionais, o código para lançamento e captura de exceções não é uma parte opcional mas uma parte fundamental de tais aplicações. Porém, o que se tem observado é que o código projetado para tratar estas condições excepcionais pode muitas vezes ser a causa de crashes (e.g., exceções não capturadas). Até o momento nenhum estudo investigou as principais características do código de tratamento de exceções de aplicações. Este trabalho apresenta um conjunto de estudos complementares para melhor entender as características do código de TE de aplicações Android assim como identificar a visão dos desenvolvedores a respeito destas características. Neste trabalho foram realizados três estudos: (i) um estudo exploratório onde foram inspecionados o código de TE de 15 aplicações Android populares (o que no total correspondeu a 3490 blocos try-catch-finally); e (ii) dois estudos qualitativos baseados em técnicas de Grounded Theory, nos quais surveys foram aplicados a desenvolvedores e especialistas Android para levantar a opinião dos mesmos sobre boas e más praticas no desenvolvimento do tratamento de exceções no ambiente Android. Durante estes estudos observamos um grande número de exceções sendo silenciada e poucas aplicações enviando informações de exceção para servidores remotos.  Ambas características foram consideradas má práticas pelos especialistas que podem impactar negativamente na robustez destas aplicações. 


  • Mostrar Abstract
  • Along the recent years, we have witnessed an astonishing increase in the number mobile applications being developed and some of them becoming largely used. Such applications extend phones capabilities far beyond of the basic calls. In the same rate the number of a users increase, also increases the number of users affected by application faults and crashes. In this contexto, Android apps are becoming more and more popular. The number of such apps is astonishingly increasing in a daily rate, as well as the number of users affected by their crashes. Android apps as other Java apps may crash due to faults on the exception handling (EH) code (e.g. uncaught exceptions). Techniques for exception detection and handling are not an optional add-on but a fundamental part of such apps. Yet, no study has investigated the main characteristics of the EH code of mobile apps nor the developers perspective about the good and bad practices of EH in such context. In this work we conducted three complementary studies: (i) one that inspected the EH code of 15 popular Android apps (which overall comprises of 3490 try-catch-finally blocks); and two qualitative studies based an Grounded Theory techniques, on which two surveys were applied to 28 Adndroid developers and 47 Android experts respectively, to get their opinion about the good and bad practices of EH development in Android environment. Some outcomes of the studies show a high occurrence of exception swallowing and only few apps sending exception information to a remote server – both considered by Android experts as bad practices that negatively impact the app robustness.

22
  • MATEUS SILVÉRIO DE ASSIS
  • CLASSIFICAÇÃO MULTIRRÓTULO COM APRENDIZADO SEMISSUPERVISIONADO: UMA ANÁLISE MULTIVISÃO DE DADOS

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • MEMBROS DA BANCA :
  • ANNE MAGALY DE PAULA CANUTO
  • ARAKEN DE MEDEIROS SANTOS
  • BRUNO MOTTA DE CARVALHO
  • JOAO CARLOS XAVIER JUNIOR
  • Data: 19/08/2016

  • Mostrar Resumo
  • Ao longo dos últimos anos, as técnicas computacionais aplicadas ao aprendizado de máquina têm sido divididas ou categorizadas quanto ao grau de supervisão presente nos conjuntos de treinamentos e quanto ao número de rótulos presente no atributo classe. Dentro dessas divisões, encontramos o aprendizado semissupervisionado, técnica que trabalha muito bem quando nem todos os rótulos dos exemplos do conjunto de treinamento são conhecidos. Por outro lado, a classificação multirrótulo, também está presente nessas categorias e propõe classificar exemplos quando estes estão associados a um ou mais rótulos. A combinação dessas técnicas de aprendizado gera a classificação multirrótulo semissupervisionado. Ainda nesse contexto, existem vertentes que trabalham com o aprendizado semissupervisionado para dados de visão única e aprendizado semissupervisionado para dados de visão múltipla. Os algoritmos de aprendizado semissupervisionado para dados de visão múltipla tem como ideia básica a exploração da discordância entre as predições dos diferentes classificadores, sendo este um assunto pouco abordado em pesquisas. Nesse sentido, esse trabalho propõe novos métodos para classificação multirrótulo semissupervisionado em uma abordagem para dados de visão múltipla, mostrando os resultados de alguns experimentos realizados e comparando alguns resultados dos experimentos utilizando os novos métodos com resultados de experimentos utilizando métodos já existentes.


  • Mostrar Abstract
  • Over the last years, the computational techniques used for machine learning have been divided or categorized according to the degree of supervision that exists in these training’s set and according on the number of labels in this class attribute. Within these divisions, we find the semi-supervised learning, a technique that works well when nor all labels examples of the training set are known. In the other hand, the multi-label classification also is present in these categories and it proposes to classify examples when they are associated with one or more labels. The combination of these learning techniques generates the classification semi-supervised multi-label. Also in this context, there are sides that work with the semi-supervised learning for single vision and semisupervised learning data for multiple viewing data. The semi-supervised learning algorithms for multiple viewing data has the basic idea of the exploitation of disagreements between the predictions of different classifiers, which is a subject rarely addressed in research. Thus, this work proposes the use of semi-supervised learning for multi-label classification using an approach with multiple viewing data, showing the results of some experiments and comparing some results of experiments using the new methods with the results of experiments using existing methods.

23
  • MURILO REGALADO ROCHA
  • Um ambiente online gamificado para ensino de programação de jogos digitais

  • Orientador : EDUARDO HENRIQUE DA SILVA ARANHA
  • MEMBROS DA BANCA :
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • IG IBERT BITTENCOURT SANTANA PINTO
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • ROMMEL WLADIMIR DE LIMA
  • Data: 24/08/2016

  • Mostrar Resumo
  • Com os avanços das tecnologias de informação e comunicação surge uma nova modalidade de ensino, a educação a distancia é realizada através de ambientes virtuais de aprendizagem. Apesar de facilidades e vantagens, um dos maiores desafios desses ambientes virtuais de aprendizagem é garantir o envolvimento e motivação por parte dos alunos. Neste contexto, a gamificação surge como uma proposta à solução dos problemas e este trabalho explora algumas dessas técnicas adaptando elemento de jogos ao ensino em um Ambiente Virtual de aprendizagem voltado para o ensino e competição de programação de jogos digitais. Três estudos em larga escala foram realizados, visando analisar os reais problemas no ensino online de programação e como a gamificação ajudou a minimizá-los no contexto do ambiente proposto.


  • Mostrar Abstract
  • Distance learning is an important learning model nowadays. Despite their facilities and benefits, one of the biggest challenges of online learning environments is to ensure students' engagement and motivation. In this context, gamification appears to be a good proposal for that kind of problem. This work investigates the use of some gamification techniques to adapt game elements to a proposed online learning environment for programming games. Three large scale studies were run and the results are presented, aiming at showing evidence about the real problems of online learning environments and how gamification can help in the context of the proposed environment.

24
  • PEDRINA CÉLIA BRASIL
  • Uma Arquitetura Multi-Agente de Suporte ao Processo Educacional Baseado em Jogos Digitais

  • Orientador : EDUARDO HENRIQUE DA SILVA ARANHA
  • MEMBROS DA BANCA :
  • ANDRE MAURICIO CUNHA CAMPOS
  • ANNE MAGALY DE PAULA CANUTO
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • FRANCISCO MILTON MENDES NETO
  • Data: 25/08/2016

  • Mostrar Resumo
  • Apesar dos seus benefícios ao processo educacional, os jogos digitais ainda são pouco explorados nos contextos escolares. A adoção desses materiais introduz uma complexidade ao processo de ensino-aprendizagem que carece de tempo para organizar atividades educacionais baseadas no uso de jogos. Muitas são as ferramentas e ambientes utilizados para disponibilização de materiais didáticos e outros recursos relacionados ao aprendizado de determinado assunto. Porém, o excesso de informações disponíveis combinado às diferentes necessidades de um usuário pode desviar o foco daquilo que é mais relevante a um contexto de aprendizagem real. Dentre as alternativas existentes, vem crescendo o uso de Sistemas de Recomendação (SR) em Ambientes Virtuais de Aprendizagem (AVA), de modo que ao usuário sejam apresentados os melhores recursos para apoiar suas experiências de aprendizagem. Dessa forma, o objetivo deste trabalho é apresentar uma arquitetura multi-agente que, a partir de um plano de atividades, recomende jogos digitais educacionais adequados às preferências e contexto educacional do usuário.


  • Mostrar Abstract
  • Despite their benefits to the learning process, videogames are still not widely used in school environments. The adoption of these materials introduces complexity to the teaching/learning process that lacks time to organize game-based learning activities. There are many tools and environments  used  to  provide instructional  materials  and  other resources  related  to  a  particular  subject. However, the excess of information available combined with the  different individual needs can deviate the focus of the users of what is most relevant to their learning context. Therefore, there is an increasing use of Recommender Systems (RS) in Virtual Learning Environments (VLE), in order to provide the most relevant resources for supporting the learning experiences of the user. Thus, the objective of this paper is to present a multi-agent architecture that, from a study plan, recommends educational digital games suitable to the preferences and the context of the user.

25
  • ROBSON PAULO DA SILVA
  • MODELO DE RASTREABILIDADE DE REQUISITOS APLICADA A GESTÃO DE PROJETOS EM MÉTODOS ÁGEIS

  • Orientador : MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • MEMBROS DA BANCA :
  • FERNANDO MARQUES FIGUEIRA FILHO
  • GILBERTO AMADO DE AZEVEDO CYSNEIROS FILHO
  • LYRENE FERNANDES DA SILVA
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • Data: 26/08/2016

  • Mostrar Resumo
  • Métodos ágeis tornaram-se uma forma de desenvolvimento predominante, sendo praticados em larga escala na indústria  e objeto de grande interesse científico pela comunidade acadêmica. Apesar de suas muitas qualidades reconhecidas pelos praticantes e pela academia, existem alguns pontos de fraqueza em que os Métodos Ágeis poderiam se beneficiar de soluções mais conservadoras, provenientes de métodos mais tradicionais. Neste sentido temos, por exemplo, situações em que ocorra a perda da memória coletiva devido à alta rotatividade de pessoal, ou a mudança do desenvolvimento de onshore para offshore.

    Uma das praticas em métodos tradicionais que pode trazer benefícios para os processos ágeis  é o emprego da Rastreabilidade para apoiar a gestão de projetos em  Métodos Ágeis. O objetivo deste trabalho é apresentar um modelo de referência de rastreabilidade para gestão de projetos em Métodos Ágeis e mostrar como aplica-lo em um contexto real. Para construir este modelo foi feita uma revisão da literatura, na qual foram buscadas entidades de referência que representam conceitos, necessidades de informação, reconhecidos pela comunidade científica como importantes para a rastreabilidade de requisitos, além daqueles relacionados a projetos ágeis. Estes conceitos foram empregados na construção de um modelo de referência de rastreabilidade cuja utilidade foi avaliada na extração de informações de gestão de projetos de software de uma grande corporação. Estas informações foram usadas para identificar problemas tais como: falta de testes; inconsistências na instanciação dos processos; deficiências na gestão dos projetos e; incoerências entre as Histórias de Usuário e seus detalhamentos.


  • Mostrar Abstract
  • Agile methods have become a predominant form of development, being practiced on a large scale in the industry and object of great scientific interest in the academic community. Despite its many qualities recognized by practitioners and the academia, there are some points of weakness on what agile methods could benefit from more conservative solutions, imported from the traditional methods, for example, situations in which there is loss of collective memory due to high staff turnover, or changing the development of onshore to offshore. One of these solutions that can bring many benefits to the agile development process is the use of traceability to support project management in Agile Methods.

    The aim of this work is to present a traceability reference model for agile methods project management scope and show how to apply it in a real context. To build this model a literature review was conducted, in which reference entities were required representing concepts, information needs, recognized by the scientific community as important for traceability requirements in addition to those related to Agile projects. These concepts were used in the construction of a traceability reference model whose usefulness was evaluated in the extraction of software project management information of a large corporation. It is used to identify problems such as lack of testing; inconsistencies in the instantiation of processes; deficiencies in the management of projects and; inconsistencies between the User Stories and their detailing.

     

26
  • RAFAEL DE MORAIS PINTO
  • Uma Linha de Processo de Software para Elicitação de Requisitos Baseada na Criatividade Combinacional
  • Orientador : MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • MEMBROS DA BANCA :
  • DENIS DA SILVA SILVEIRA
  • FELLIPE ARAÚJO ALEIXO
  • FERNANDO MARQUES FIGUEIRA FILHO
  • LYRENE FERNANDES DA SILVA
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • Data: 14/10/2016

  • Mostrar Resumo
  • A Engenharia de Requisitos tem buscado, através de técnicas de
    criatividade, fornecer meios para elicitação de requisitos úteis e
    originais. Dentre as diversas técnicas de elicitação de requisitos
    criativas, podemos citar o framework proposto por Bhowmik, que propõe a
    criação de novos requisitos para determinado software através da
    criatividade combinacional. Seguindo Bhowmik, definimos um processo
    parecido ao originalmente proposto, também utilizando criatividade
    combinacional. Posteriormente, realizamos um segundo experimento utilizando
    novas variações em outro contexto organizacional e mais uma vez obtivemos
    êxito com os resultados obtidos. Constatamos que, mesmo diante das
    variações ocorridas de acordo com o contexto organizacional, é possível
    criar requisitos úteis utilizando a perspectiva da criatividade
    combinacional como técnica de elicitação de requisitos. No entanto,
    identificar as variações e adaptá-las ao contexto organizacional não é
    tarefa simples diante da gama de opções disponíveis. Assim, esta
    dissertação apresenta uma Linha de Processo de Software (LPrS) para
    elicitação de requisitos baseada na criatividade combinacional, com a
    finalidade de ser instanciada e utilizada por equipes de desenvolvimento de
    software. Um processo de software pode ser definido como um conjunto de
    atividades necessárias para conceber, desenvolver, implantar e manter um
    produto de software. Os processos de software podem ser complexos, além de
    possibilitar diversas alternativas de execução de suas atividades. Nossa
    LPrS define um processo e identifica suas variabilidades a fim de
    documentar um guia para facilitar o trabalho de seus utilizadores. Para
    validar nossa abordagem, modelamos dois experimentos realizados utilizando
    criatividade combinacional com o propósito de identificar e comparar suas
    atividades e variabilidades em relação à linha proposta.


  • Mostrar Abstract
  • The need for innovation and appreciation of creative solutions has taken requirements engineeringresearchersto investigate creativity techniques to elicit useful and unique requirements. Such techniques are based on the combination of ideas (requirements, words or problems) that generally come from different sources and are carried out in a process that involves different roles. However, how can we identify the common core and which variations can be adapted to the organizational context where the technique will be used? This article presents a Software Process Line (SPrL) to elicit requirements based on combinational creativity. This SPrL represents commonalities and variabilities found in some combinational creativity techniques thereby it helps teams to define the combinational technique according their organizational context. We validate this approach by discussing how the SPrL complies with the related works' major features and how it generalizes three techniques that have already been used in experimental studies, producing satisfactory results.

27
  • JONATHAN WANDERLEY DE MESQUITA
  • Exploração de espaço de projeto para geração de Redes em Chip de topologias irregulares otimizadas: a Rede UTNoC.

  • Orientador : MARCIO EDUARDO KREUTZ
  • MEMBROS DA BANCA :
  • MARCIO EDUARDO KREUTZ
  • MONICA MAGALHAES PEREIRA
  • CESAR ALBENES ZEFERINO
  • Data: 08/12/2016

  • Mostrar Resumo
  • Durante o projeto de arquiteturas multiprocessadas, a etapa de exploração do espaço de projeto pode ser auxíliada por ferramentas que aceleram o processo. O projeto de uma arquitetura com comunicação baseada em rede-em-chip, usualmente considera topologias regulares, e de caráter genérico, desconsiderando uma eventual irregularidade no padrão de comunicação entre os elementos interligados. Projetos heterogêneos necessitam de so- luções de comunicação ad-hoc, onde a exploração manual do espaço de projeto se torna inviável, dada a sua complexidade. O presente trabalho propõe uma rede em chip de to- pologia irregular, capaz de ter bons desempenhos (próximo ao desempenho de uma rede conectada segundo o grafo da aplicação), por meio de um processo de comunicação ba- seado em tabelas de roteamento. Também, uma ferramenta de exploração em alto nível utilizando Algoritmo genético, capaz de encontrar redes UTNoCs com número reduzido de conexões, e auxiliando em decisões de projetos destas redes. Resultados obtidos cor- roboram o trabalho, obtendo redes UTNoCs com desempenhos próximos aos de redes conectadas segundo os grafos de suas aplicações, e com redução no número de conexões de até 54%, representando uma redução significativa de área e consumo de energia. 


  • Mostrar Abstract
  • During the design of multiprocessor architectures, the design space exploration step may be aided by tools that assist and accelerate this process. The project of architectures whose communications are based on Networks-on-Chip (NoCs), usually relies on regular topologies, disregarding a possible irregularity in the communication pattern between the interconnected elements. The present work proposes an irregular topology chip network, capable of having good performance (close to the performance of a network connected according to the application graph), through a communication process based on routing tables. The work proposes also a high-level exploration tool using Genetic Algorithm, able to find UTNoC networks with reduced number of connections, and assisting in the design decisions of these networks. Results obtained show that is possible to obtain UTNoC networks with performances close to the performance of networks connected according to the graphs of their applications, and with a reduction in the number of connections of up to 54%, representing a significant reduction of area and energy consumption. 

28
  • FREDERICO NUNES DO PRANTO FILHO
  • ECSFlow: Implementação de um modelo de tratamento de exceção para C#

  • Orientador : NELIO ALESSANDRO AZEVEDO CACHO
  • MEMBROS DA BANCA :
  • FRANCISCO DANTAS DE MEDEIROS NETO
  • NELIO ALESSANDRO AZEVEDO CACHO
  • ROBERTA DE SOUZA COELHO
  • Data: 12/12/2016

  • Mostrar Resumo
  • As linguagens de programação convencionais, tais como C#, Ruby, Python e outras, fornecem mecanismos internos de tratamento de exceções afim de prover uma implementação de tratamento de exceções robusta e manutenível em sistemas de software. Essas linguagens suportam o que chamamos de mecanismos de tratamento de exceções dirigidos à manutenção, visto que elas reduzem as restrições de programação no tratamento de exceção buscando agilizar mudanças no código fonte. No entanto, muitos dos problemas que resultam do tratamento de exceção são causados pela forma local na qual as exceções são tratadas. Desta forma, os desenvolvedores devem compreender a origem da exceção, o local onde a exceção será tratada e todo o fluxo de controle excepcional entre esses dois pontos. Consequentemente, à medida que o desenvolvimento do software evolui, este fluxo torna-se cada vez menos conhecido, prejudicando a manutenção e robustez do sistema. Este trabalho apresenta uma implementação do modelo de tratamento de exceção para a linguagem C# denominada ECSFlow. Diferentemente de outros mecanismos de tratamento de exceção, este modelo provê abstrações para descrever o controle do fluxo excepcional numa visão global, permitindo entender o fluxo excepcional em uma perspectiva fim-a-fim, observando somente uma parte do código. Além disso, o modelo permite associar o tratamento de exceção ao código normal de forma mais flexível. Nós avaliamos qualitativamente e quantitativamente o modelo proposto através de um estudo de caso de uma aplicação web real


  • Mostrar Abstract
  • Mainstream programming languages, such as C#, Ruby, Python and many others, provide
    built-in exception handling mechanisms to support robust and maintainable implementation
    of exception handling in software systems. These languages support what we call
    maintenance-driven exception handling mechanisms, since they reduce the programming
    restrictions in exception handling toward an more agile source code maintenance in software
    evolution. However, many of the problems that stem from the use of exception
    handling are caused by the local way in which exceptions are handled. It demands that
    developers understand the source of an exception, the place where it is handled, and
    everything in between. As a consequence, as system development progresses, exceptional
    control ows become less well-understood, with potentially negative consequences for the
    program maintainability and reliability. This paper presents an exception handling model
    implementation for C# languagem called ECSFlow. In contrast to other exception handling
    mechanisms, our model provides abstractions to explicitly describe global views of
    exceptional control ows, making possible to understand exception ows from an end-toend
    perspective by looking at a single part of the program. Also, it leverages to make the
    association of exception code with normal code more exible. We evaluate qualitatively
    and quantitatively the proposed exception handling model through a case study targeting
    a real application.

29
  • FLÁVIO DE SOUSA RAMALHO
  • SmartEdge: Extensões de Nuvem para Computação de Borda para Suportar Aplicações IoT Sensíveis a Latência

  • Orientador : AUGUSTO JOSE VENANCIO NETO
  • MEMBROS DA BANCA :
  • AUGUSTO JOSE VENANCIO NETO
  • JOSÉ NEUMAN DE SOUZA
  • THAIS VASCONCELOS BATISTA
  • Data: 15/12/2016

  • Mostrar Resumo
  • O rápido crescimento do número de dispositivos conectados à Internet, associado às taxas crescentes de popularidade e demanda de aplicações e serviços em tempo real na nuvem, com restrições de latência, torna muito difícil para estruturas de computação em nuvem tradicionais acomodá-los de forma eficiente. Mais especificamente, a abordagem centralizada adotada tradicionalmente por Data Centers (DC) atuais apresentam problemas de desempenho para atender de aplicações em nuvem com alta densidade, principalmente quanto a capacidade de resposta e escalabilidade. Nossa dependência insubstituível por computação em nuvem, exige infra-estruturas de DCs sempre disponíveis, enquanto mantém ao mesmo tempo capacidades de desempenho suficientes para responder a uma enorme quantidade de solicitações de aplicativos em nuvem. Neste trabalho, a aplicabilidade do emergente paradigma de computação em névoa é explorada para melhorar o desempenho no suporte de aplicações em nuvem sensíveis à latência voltadas a Internet das Coisas (do inglês Internet of Things - IoT). Com base neste objetivo, apresentamos o novo modelo denominado Infraestrutura de Borda como um Serviço (do inglês Edge Infrastructure as a Service - EIaaS), que procura oferecer um novo modelo de computação em nuvem com serviço de entrega baseado em computação de borda voltado a atender de forma eficiente as exigências de aplicações IoT em tempo real sensíveis à latência. Com a abordagem EIaaS, provedores de nuvem podem implantar dinamicamente aplicações/serviços IoT diretamente nas infra-estruturas de computação de borda, nem como gerir seus recursos de núvem/rede em tempo de execução, como forma de manter as aplicações IoT sempre melhor conectadas e melhor servidas. A abordagem resultante é arquitetada em uma estrutura modular, tendo como base tecnológica ferramentas de Rede Definida por Software (do inglês, Software-Defined Networking - SDN) para lidar com recursos de computação de borda (CPU, memória, etc.) e de rede (caminhos, largura de banda, etc.), respectivamente. Os resultados preliminares mostram como as principais técnicas de virtualização utilizadas no âmbito deste trabalho, afetam o desempenho das aplicações na infraestrutura de borda da rede. A virtualizaçào por containers leva vantagem sobre a técnica de virtualização por máquinas virtuais para implantar aplicações na borda da rede, uma vez que oferece grande flexibilidade mesmo na presença de demanda de recursos.


  • Mostrar Abstract
  • The rapid growth in the number of Internet-connected devices, associated to the increasing rates in popularity and demand for real-time and latency-constrained cloud application services makes the use of traditional cloud computing frameworks challenging to afford such environment. More specifically, the centralized approach traditionally adopted by current Data Center (DC) pose performance issues to suit a high density of cloud applications, mainly in terms to responsiveness and scalability. Our irreplaceable dependency on cloud computing, demands DC infrastructures always available while keeping, at the same time, enough performance capabilities for responding to a huge amount of cloud application requests. In this work, the applicability of the fog computing emerging paradigm is exploited to enhance the performance on supporting latency-sensitive cloud applications tailored for Internet of Things (IoT). With this goal in mind, we introduce a new service model named Edge Infrastructure as a Service (EIaaS), which seeks to offer a new edge computing tailored cloud computing service delivery model to efficiently suit the requirements of the real-time latency-sensitive IoT applications. With EIaaS approach, cloud providers are allowed to dynamically deploy IoT applications/services in the edge computing infrastructures and manage cloud/network resources at the run time, as means to keep IoT applications always best connected and best served. The resulting approach is modeled in a modular architecture, leveraging both container and Software-Defined Networking technologies to handle edge computing (CPU, memory, etc) and network resources (path, bandwidth, etc) respectively. Preliminary results show how the virtualization technique affects the performance of applications at the network edge infra. The container-based virtualization takes advantage over the hypervisor-based technique for deploying applications at the edge computing infrastructure, as it offers a great deal of flexibility under the presence of resource constraints.

Teses
1
  • MARCELO DAMASCENO DE MELO
  • Verificação de Usuários através de Biometrias canceláveis comportamentais. 

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • MEMBROS DA BANCA :
  • ANNE MAGALY DE PAULA CANUTO
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • JOAO CARLOS XAVIER JUNIOR
  • ANDRÉ CARLOS PONCE DE LEON FERREIRA DE CARVALHO
  • GEORGE DARMITON DA CUNHA CAVALCANTI
  • Data: 07/03/2016

  • Mostrar Resumo
  • The verification of user identity is a faced daily problem to people or system that authorize the acess of people taking account the physical and document characteristics.
    However, efforts need to be spend to resolve related questions to accuracy of verification system and in the falsification of objects and personal information.
    Thus, biometrics proposes minimize and resolve these difficulties.
    Unfortunately, the substitution of biometric traces in the case of compromise is difficult.
    Hence, the use of non-invertible functions is proposed to distort the biometric traces.
    Consequently, this procedures allows that biometric templates becomes cancelable or revocable.

    This thesis analysis some solution to user verification using cancelable behavioural biometrics.
    The analysed solutions are based on the use of single classifiers and ensemble system to resolve the user verification problem.
    In addition, this thesis analysis the use of multiple cancelable templates using ensemble system (Multiple-Privacy Protection Schemes).
    This thesis also presents a discussion of key impact in a cancelable function.
    Thus, we show a empiric study of use of single or different key values to enrolled users.
    Moreover, a study of the impact of key length is discussed based on the accuracy of biometric system.
    Based on the results, it is discussed the generation and storage of cancelable keys in mobile devices.

    In summary, we have demonstrated that the use of a transformation function usually provides similar or better performance than Original biometric data, except in BioHashing function.
    In addition, the use of multiple protected templates processed by ensemble system outperformed the previous results in single classifiers and ensemble system.
    Moreover, we showed that biometric system with cancelable templates preserves the user privacy, i.e, it provides lower False Acceptance and False Rejection Errors in Unknown Key attacks and similar performance to unprotected biometric samples in Known Key Attacks.
    Based on key length experiments, we observe a perceptible continuous improvement when the key increases in Interpolation and BioHashing method in both key knowledge attacks.
    In contrast, Double Sum have minor improvements but the most important is the performance does not decrease when the key increases.
    In conclusion, based on our findings, we proposes the use of a key generated by system to authenticate users in mobile devices using cancelable biometric templates.

  • Mostrar Abstract
  • The verification of user identity is a faced daily problem to people or system that authorize the acess of people taking account the physical and document characteristics.
    However, efforts need to be spend to resolve related questions to accuracy of verification system and in the falsification of objects and personal information.
    Thus, biometrics proposes minimize and resolve these difficulties.
    Unfortunately, the substitution of biometric traces in the case of compromise is difficult.
    Hence, the use of non-invertible functions is proposed to distort the biometric traces.
    Consequently, this procedures allows that biometric templates becomes cancelable or revocable.

    This thesis analysis some solution to user verification using cancelable behavioural biometrics.
    The analysed solutions are based on the use of single classifiers and ensemble system to resolve the user verification problem.
    In addition, this thesis analysis the use of multiple cancelable templates using ensemble system (Multiple-Privacy Protection Schemes).
    This thesis also presents a discussion of key impact in a cancelable function.
    Thus, we show a empiric study of use of single or different key values to enrolled users.
    Moreover, a study of the impact of key length is discussed based on the accuracy of biometric system.
    Based on the results, it is discussed the generation and storage of cancelable keys in mobile devices.

    In summary, we have demonstrated that the use of a transformation function usually provides similar or better performance than Original biometric data, except in BioHashing function.
    In addition, the use of multiple protected templates processed by ensemble system outperformed the previous results in single classifiers and ensemble system.
    Moreover, we showed that biometric system with cancelable templates preserves the user privacy, i.e, it provides lower False Acceptance and False Rejection Errors in Unknown Key attacks and similar performance to unprotected biometric samples in Known Key Attacks.
    Based on key length experiments, we observe a perceptible continuous improvement when the key increases in Interpolation and BioHashing method in both key knowledge attacks.
    In contrast, Double Sum have minor improvements but the most important is the performance does not decrease when the key increases.
    In conclusion, based on our findings, we proposes the use of a key generated by system to authenticate users in mobile devices using cancelable biometric templates.
2
  • Valério Gutemberg de Medeiros Júnior
  • Método B e a síntese verificada para código de montagem

  • Orientador : DAVID BORIS PAUL DEHARBE
  • MEMBROS DA BANCA :
  • MARTIN ALEJANDRO MUSICANTE
  • DAVID BORIS PAUL DEHARBE
  • MARCEL VINICIUS MEDEIROS OLIVEIRA
  • ALEXANDRE CABRAL MOTA
  • BRUNO EMERSON GURGEL GOMES
  • Data: 08/03/2016

  • Mostrar Resumo
  • A síntese de código de montagem é um processo que exige um cuidado rigoroso. Normalmente, esse processo nos tradutores e nos compiladores mais maduros é relativamente seguro, apesar de que, esporadicamente, erros são identificados neles. Em um contexto mais restrito, os tradutores utilizados em comunidades menores e em constante desenvolvimento são mais suscetíveis a erros. Considerando esse contexto, duas abordagens de tradução e de verificação usando o método B são apresentadas. A primeira abordagem propõe a tradução do componente B para o código de montagem de uma plataforma específica, usando um modelo formal do conjunto de instruções, o qual possibilita também depurar e verificar as propriedades de programas. Essa abordagem é capaz de garantir formalmente a coerência semântica da tradução, apesar de ser um processo de verificação árduo e lento. Tal esforço de verificação foi aliviado através de uma ferramenta desenvolvida (BEval), que aproveitou melhor as técnicas de verificação. Após o processo de prova automática usando uma ferramenta B robusta (Atelier B), BEval ainda foi capaz de resolver em certos modelos muitas das obrigações de prova remanescentes, chegando a até 88% do total de obrigações. Contudo, o processo de verificação da abordagem de tradução continuou complexo, exigindo várias interações manuais. Afim de viabilizar uma tradução mais eficiente e também segura, uma segunda abordagem de tradução de B para o código de máquina virtual foi desenvolvida. A segunda abordagem utilizou o tradutor desenvolvido B2LLVM e aplicou a geração automática de testes para verificar a coerência entre a especificação do programa e o seu respectivo código de montagem. Esse tradutor também suporta a avaliação de cobertura do código e a inserção de anotações de rastreabilidade. Dessa forma, o trabalho contribuiu significativamente na tradução de B para o código de montagem, oferecendo um suporte rigoroso para a verificação da tradução. Atualmente, o B2LLVM já é capaz de gerar código para 84% dos exemplos de teste baseados na gramática que são traduzíveis por um relevante tradutor industrial (C4B). Ademais, o código gerado por B2LLVM apresenta vantagens importantes na ampla capacidade de verificação, de integração e de otimização. 


  • Mostrar Abstract
  • A síntese de código de montagem é um processo que exige um cuidado rigoroso. Normalmente, esse processo nos tradutores e nos compiladores mais maduros é relativamente seguro, apesar de que, esporadicamente, erros são identificados neles. Em um contexto mais restrito, os tradutores utilizados em comunidades menores e em constante desenvolvimento são mais suscetíveis a erros. Considerando esse contexto, duas abordagens de tradução e de verificação usando o método B são apresentadas. A primeira abordagem propõe a tradução do componente B para o código de montagem de uma plataforma específica, usando um modelo formal do conjunto de instruções, o qual possibilita também depurar e verificar as propriedades de programas. Essa abordagem é capaz de garantir formalmente a coerência semântica da tradução, apesar de ser um processo de verificação árduo e lento. Tal esforço de verificação foi aliviado através de uma ferramenta desenvolvida (BEval), que aproveitou melhor as técnicas de verificação. Após o processo de prova automática usando uma ferramenta B robusta (Atelier B), BEval ainda foi capaz de resolver em certos modelos muitas das obrigações de prova remanescentes, chegando a até 88% do total de obrigações. Contudo, o processo de verificação da abordagem de tradução continuou complexo, exigindo várias interações manuais. Afim de viabilizar uma tradução mais eficiente e também segura, uma segunda abordagem de tradução de B para o código de máquina virtual foi desenvolvida. A segunda abordagem utilizou o tradutor desenvolvido B2LLVM e aplicou a geração automática de testes para verificar a coerência entre a especificação do programa e o seu respectivo código de montagem. Esse tradutor também suporta a avaliação de cobertura do código e a inserção de anotações de rastreabilidade. Dessa forma, o trabalho contribuiu significativamente na tradução de B para o código de montagem, oferecendo um suporte rigoroso para a verificação da tradução. Atualmente, o B2LLVM já é capaz de gerar código para 84% dos exemplos de teste baseados na gramática que são traduzíveis por um relevante tradutor industrial (C4B). Ademais, o código gerado por B2LLVM apresenta vantagens importantes na ampla capacidade de verificação, de integração e de otimização. 

3
  • ERNESTO CID BRASIL DE MATOS
  • BETA: uma Abordagem de Testes Baseada em B

  • Orientador : ANAMARIA MARTINS MOREIRA
  • MEMBROS DA BANCA :
  • ANAMARIA MARTINS MOREIRA
  • MARCEL VINICIUS MEDEIROS OLIVEIRA
  • ALEXANDRE CABRAL MOTA
  • MICHAEL LEUSCHEL
  • PATRICIA DUARTE DE LIMA MACHADO
  • Data: 14/04/2016

  • Mostrar Resumo
  • Sistemas de software estão presentes em grande parte das nossas vidas atualmente e, mais do que nunca, eles requerem um alto nível de confiabilidade. Existem várias técnicas de Ver- ificação e Validação (V&V) de software que se preocupam com controle de qualidade, segu- rança, robustez e confiabilidade; as mais conhecidas são Testes de Software e Métodos For- mais. Métodos formais e testes são técnicas que podem se complementar. Enquanto méto- dos formais provêem mecanismos confiáveis para raciocinar sobre o sistema em um nível mais abstrato, técnicas de teste ainda são necessárias para uma validação mais profunda e são frenquentemente requeridas por orgãos de certificação. Levando isto em consideração, BETA provê uma abordagem de testes baseada em modelos para o Método B, suportada por uma ferramenta, que é capaz de gerar testes de unidade a partir de máquinas abstratas B. Nesta tese de doutorado apresentamos melhorias realizadas em BETA e novos estudos de caso realizados para avaliá-la. Dentre as melhorias, integramos critérios de cobertura lógicos à abordagem, revisamos os critérios de cobertura baseados em espaço de entrada que já eram suportados e aperfeiçoamos as últimas etapas do processo de geração de testes. A abordagem agora suporta a geração automática de dados para os oráculos e preâmbulos para os casos de teste; ela também possui uma funcionalidade para concretização dos da- dos de teste e um módulo para gerar scripts de teste executáveis automaticamente. Outro objetivo desta tese foi realizar estudos de caso mais complexos utilizando BETA e avaliar a qualidade dos casos de teste que a abordagem produz. Estes estudos de caso foram os primeiros a avaliar o processo de geração de testes por completo, desde a especificação dos casos de teste até a sua implementação e execução. Em nossos últimos experimentos, analisamos a qualidade dos casos de teste gerados por BETA, considerando cada critério de cobertura suportado, utilizando métricas de cobertuda de código como cobertura de in- struções e ramificações. Também utilizamos testes de mutação para avaliar a capacidade dos casos de teste de detectar faltas na implementação dos modelos. O resultados obtidos foram promissores mostrando que BETA é capaz de detectar faltas introduzidas por progra- madores ou geradores de código e que a abordagem pode obter bons resultados de cobertura para a implementação de um sistema baseado em modelos B.


  • Mostrar Abstract
  • Sistemas de software estão presentes em grande parte das nossas vidas atualmente e, mais do que nunca, eles requerem um alto nível de confiabilidade. Existem várias técnicas de Ver- ificação e Validação (V&V) de software que se preocupam com controle de qualidade, segu- rança, robustez e confiabilidade; as mais conhecidas são Testes de Software e Métodos For- mais. Métodos formais e testes são técnicas que podem se complementar. Enquanto méto- dos formais provêem mecanismos confiáveis para raciocinar sobre o sistema em um nível mais abstrato, técnicas de teste ainda são necessárias para uma validação mais profunda e são frenquentemente requeridas por orgãos de certificação. Levando isto em consideração, BETA provê uma abordagem de testes baseada em modelos para o Método B, suportada por uma ferramenta, que é capaz de gerar testes de unidade a partir de máquinas abstratas B. Nesta tese de doutorado apresentamos melhorias realizadas em BETA e novos estudos de caso realizados para avaliá-la. Dentre as melhorias, integramos critérios de cobertura lógicos à abordagem, revisamos os critérios de cobertura baseados em espaço de entrada que já eram suportados e aperfeiçoamos as últimas etapas do processo de geração de testes. A abordagem agora suporta a geração automática de dados para os oráculos e preâmbulos para os casos de teste; ela também possui uma funcionalidade para concretização dos da- dos de teste e um módulo para gerar scripts de teste executáveis automaticamente. Outro objetivo desta tese foi realizar estudos de caso mais complexos utilizando BETA e avaliar a qualidade dos casos de teste que a abordagem produz. Estes estudos de caso foram os primeiros a avaliar o processo de geração de testes por completo, desde a especificação dos casos de teste até a sua implementação e execução. Em nossos últimos experimentos, analisamos a qualidade dos casos de teste gerados por BETA, considerando cada critério de cobertura suportado, utilizando métricas de cobertuda de código como cobertura de in- struções e ramificações. Também utilizamos testes de mutação para avaliar a capacidade dos casos de teste de detectar faltas na implementação dos modelos. O resultados obtidos foram promissores mostrando que BETA é capaz de detectar faltas introduzidas por progra- madores ou geradores de código e que a abordagem pode obter bons resultados de cobertura para a implementação de um sistema baseado em modelos B.

4
  • EVERTON RANIELLY DE SOUSA CAVALCANTE
  • A Formally Founded Framework for Dynamic Software Architectures

     

  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • THAIS VASCONCELOS BATISTA
  • JAIR CAVALCANTI LEITE
  • GIBEON SOARES DE AQUINO JUNIOR
  • ELISA YUMI NAKAGAWA
  • CARLOS ENRIQUE CUESTA
  • KHALIL DRIRA
  • PAULO ROBERTO FREIRE CUNHA
  • FLÁVIO OQUENDO
  • Data: 10/06/2016

  • Mostrar Resumo
  • Software architectures play a significant role in the development of software-intensive systems in order to allow satisfying both functional and non-functional requirements. In particular, dynamic software architectures have emerged to address characteristics of the contemporary systems that operate on dynamic environments and consequently subjected to changes at runtime. Architecture description languages (ADLs) are used to represent software architectures, producing models that can be used at design time and/or runtime. However, most existing ADLs have limitations in several facets: (i) they are focused on structural, topological aspects of the architecture; (ii) they do not provide an adequate support for representing behavioral aspects of the architecture; (iii) they do not allow describing advanced aspects regarding the dynamics of the architecture; (iv) they are limited with respect to the automated verification of architectural properties and constraints; and (v) they are disconnected from the implementation level, thus entailing inconsistencies between architecture and implementation. In order to tackle these problems, this thesis proposes formally founded framework for dynamic software architectures. Such a framework comprises: (i) pi-ADL, a formal language for describing software architectures under both structural and behavioral viewpoints; (ii) the specification of programmed dynamic reconfiguration operations; (iii) the automated generation of source code from architecture descriptions; and (iv) an approach based on statistical model checking (SMC) to formally express and verify properties in dynamic software architectures. The main contributions brought by the proposed framework are fourfold. First, the pi-ADL language was endowed with architectural-level primitives for describing programmed dynamic reconfigurations. Second, architecture descriptions in pi-ADL are translated towards implementation source code in the Go programming language, thereby contributing to minimize architectural drifts. Third, a novel logic, called DynBLTL, is used to formally express properties in dynamic software architectures. Fourth, a toolchain relying on SMC was built to automate the verification of architectural properties while striving to reduce effort, computational resources, and time for performing such a task. In this work, two wireless sensor network-based systems are used to validate the framework elements.


  • Mostrar Abstract
  • Software architectures play a significant role in the development of software-intensive systems in order to allow satisfying both functional and non-functional requirements. In particular, dynamic software architectures have emerged to address characteristics of the contemporary systems that operate on dynamic environments and consequently subjected to changes at runtime. Architecture description languages (ADLs) are used to represent software architectures, producing models that can be used at design time and/or runtime. However, most existing ADLs have limitations in several facets: (i) they are focused on structural, topological aspects of the architecture; (ii) they do not provide an adequate support for representing behavioral aspects of the architecture; (iii) they do not allow describing advanced aspects regarding the dynamics of the architecture; (iv) they are limited with respect to the automated verification of architectural properties and constraints; and (v) they are disconnected from the implementation level, thus entailing inconsistencies between architecture and implementation. In order to tackle these problems, this thesis proposes formally founded framework for dynamic software architectures. Such a framework comprises: (i) pi-ADL, a formal language for describing software architectures under both structural and behavioral viewpoints; (ii) the specification of programmed dynamic reconfiguration operations; (iii) the automated generation of source code from architecture descriptions; and (iv) an approach based on statistical model checking (SMC) to formally express and verify properties in dynamic software architectures. The main contributions brought by the proposed framework are fourfold. First, the pi-ADL language was endowed with architectural-level primitives for describing programmed dynamic reconfigurations. Second, architecture descriptions in pi-ADL are translated towards implementation source code in the Go programming language, thereby contributing to minimize architectural drifts. Third, a novel logic, called DynBLTL, is used to formally express properties in dynamic software architectures. Fourth, a toolchain relying on SMC was built to automate the verification of architectural properties while striving to reduce effort, computational resources, and time for performing such a task. In this work, two wireless sensor network-based systems are used to validate the framework elements.

5
  • CLAUDIO ANDRES CALLEJAS OLGUIN
  • Um estudo topológico e de teoria dos domínios das funções totais computáveis

  • Orientador : BENJAMIN RENE CALLEJAS BEDREGAL
  • MEMBROS DA BANCA :
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • REGIVAN HUGO NUNES SANTIAGO
  • FAGNER LEMOS DE SANTANA
  • JORGE PETRUCIO VIANA
  • WILSON ROSA DE OLIVEIRA JUNIOR
  • Data: 29/07/2016

  • Mostrar Resumo
  • Pela tese de Church toda abordagem teórica à classe das funções parciais computáveis obtém exatamente a mesma classe de funções. Quando restrita à classe das funções totais computáveis cada uma destas abordagens não se livra de um componente indecidível. Em particular a teoria da recursão define indutivamente esta última classe com algumas funções básicas e uns poucos construtores, onde um destes, chamado de minimalização restrita, só pode ser aplicado a uma subclasse indecidível chamada de funções regulares computáveis.

    A classe das funções totais computáveis tem sido estudada topologicamente somente numa forma extensional como um subespaço de um espaço de Baire e como uma topologia induzida de uma topologia de Scott das funções parciais (não necessariamente computáveis). Ambas as abordagens reduzem-se à mesma topologia.

    Nesta tese é feito um estudo intencional e extensional da classe das funções totais computáveis. No primeiro caso é construída uma topologia no conjunto de índices desta classe como uma topologia inicial de um limite inverso que é (como sempre é requerido) um subespaço de um espaço produto que neste caso é obtido a partir de uma família indexada de espaços métricos. No segundo caso é construída uma nova topologia de Scott para esta classe associada a uma generalização original dos domínios algébricos nomeados como quase domínios algébricos, tendo as funções totais computáveis como um exemplo desta estrutura de primeira ordem. Por meio desta última topologia de Scott é obtida uma condição necessária para as funções regulares computáveis. É demonstrado que estas três topologias não são homeomórficas entre si.

    Como um subproduto do segundo caso é apresentada uma topologia de Scott para a classe das funções totais (não necessariamente computáveis). É demonstrado que esta topologia não é homeomorfa ao espaço de Baire, devido a que a primeira é uma topologia compacta, mas a última possui uma topologia que não satisfaz esta propriedade.

    Também é demonstrado que todas estas topologias na classe das funções totais e na subclasse das funções totais computáveis têm um mesmo conjunto denso, a saber, o conjunto de todas as funções totais com suporte finito. Analogamente é demonstrado que a topologia no conjunto de índices das funções totais computáveis tem como um conjunto denso o conjunto de índices correspondente a uma enumeração computável sem repetição do conjunto das funções totais com suporte finito.


  • Mostrar Abstract
  • By the Church thesis any theoretic approach to the class of partial computable functions comes to exactly the same class of functions. Each of these approaches when restricted to the class of total computable functions do not come free of an undecidable component. In particular recursion theory inductively defines this later class from some basic functions and a few constructs, where one of them called restricted minimalization can only be applied to a subclass called regular computable functions which is undecidable.

    Topologically the class of total computable functions has been studied only in an extensional way as a subspace of a Baire space and as an induced topology of an Scott topology for the partial functions (not necessarily computable). Both approaches boil down to the same topology.

    In this dissertation an intentional and extensional study of the class of total computable functions is made. In the first case a topology on the index set of this class is build as an initial topology of an inverse limit space that is (as always required) a subspace of a product space that in this case is build from an indexed family of metric spaces. In the second case a novel
    Scott topology for this class is constructed which is bound to a novel generalization of algebraic domains coined as algebraic quasi-domains having the class of total computable functions proved to be an example of this first-order structure. Through the later Scott topology a necessary condition for the regular computable functions is obtained. All these three topologies are proved to be pairwise not homeomorphic.

    As a byproduct of the second case an Scott topology for the class of total functions (not necessarily computable) is presented. It is proved that this topology is not homeomorphic to the Baire space, wherefore the former is a compact topology but the later has a topology that fails to satisfy this property.

    It is also proved that all these topologies in the class of total functions and in the subclass of total computable functions have the set of total functions with finite support as a common dense set. Analogously it is proved that the topology in the index set of the class of total computable functions have as a dense set the indexes corresponding to a computable enumeration without repetition of the set of total functions with finite support.

6
  • MADIEL DE SOUSA CONSERVA FILHO
  • Análise de Livelock para Sistemas Baseados em Componentes

  • Orientador : MARCEL VINICIUS MEDEIROS OLIVEIRA
  • MEMBROS DA BANCA :
  • ALEXANDRE CABRAL MOTA
  • ANAMARIA MARTINS MOREIRA
  • LEILA RIBEIRO
  • MARCEL VINICIUS MEDEIROS OLIVEIRA
  • MARTIN ALEJANDRO MUSICANTE
  • Data: 12/08/2016

  • Mostrar Resumo
  • O uso crescente de sistemas complexos exige cada vez mais um maior investimento de recursos no desenvolvimento de software para garantir a confiabilidade dos sistemas. Para lidar com esta complexidade, abordagens composicionais podem ser utilizadas no desenvolvimento de sistemas de software, possibilitando a integração e a reutilização de componentes existentes. Entretanto, a fim de garantir o sucesso desta abordagem, é essencial confiar no comportamento dos componentes e, além disso, nos sistemas que são desenvolvidos utilizando essa estratégia. Problemas podem surgir quando dois ou mais componentes são integrados pela primeira vez. Este problema é ainda mais relevante quando um grupo de componentes trabalha em conjunto a fim de executar determinadas tarefas, especialmente em sistemas concorrentes, durante o qual podem surgir problemas clássicos, como livelock. Nesta proposta de tese de doutorado, nós propomos uma estratégia local para garantir ausência de divergência, por construção, em sistemas síncronos modelados com a notação padrão de CSP. Além disto, a abordagem proposta pode ser aplicada para verificar ausência de livelock em modelos que realizam comunicações assíncronas. Neste caso, nós analisamos o modelo de componente BRIC, cujo comportamento dos componentes é representado por um processo CSP. Neste contexto, nós também propomos uma abordagem correta por construção a fim de assegurar composições BRIC livres de livelock, realizando uma verificação local. A abordagem foi avaliada através de três estudos de caso: milner e duas variações do jantar dos filósofos, uma versão representa um sistema livre de livelock, e a outra inclui um sistema com livelock. Nós realizamos uma análise comparativa destes estudos de caso em três diferentes abordagens: (1) a tradicional análise global do FDR, (2) a análise estática de livelock do SLAP, (3) e a nossa estratégia local e composicional de livelock.


  • Mostrar Abstract
  • The use of increasingly complex applications is demanding a greater investment of
    resources in software development to ensure that applications are safe. For mastering
    this complexity, compositional approaches can be used in the development of software
    by integrating and reusing existing reliable components. The correct application of such
    strategies, however, relies on the trust in the behaviour of the components and in the emergent
    behaviour of the composed components because failures may arise if the composition
    does not preserve essential properties. Problems may be introduced when two or more
    error-free components are integrated for the first time. This concern is even more relevant
    when a group of components is put together in order to perform certain tasks, especially in
    safety-critical applications, during which classical problems can arise, such as livelock.
    In this thesis, we present the development of a local strategy that guarantees, by
    construction, the absence of livelock in synchronous systems as modelled using the
    standard CSP notation. Our method is based solely on the local analysis of the minimum
    sequences that lead the CSP model back to its initial state. Locality provides an alternative
    to circumvent the state explosion generated by the interaction of components and allows us
    to identify livelock before composition. The verification of these conditions use metadata
    that allow us to record partial results of verification, decreasing the overall analysis effort.
    In addition, our work can also be applied to check livelock freedom in models that perform
    asynchronous communications. In this case, we carry out livelock analysis in the context
    of a component model, BRIC, whose behaviour of the components is described as a CSP
    process. Finally, we introduce three case studies to evaluate the our livelock-analysis
    technique in practice: the Milner’s scheduler and two variations of the dining philosophers,
    a livelock-free version and a version in which we have deliberately included livelock. For
    each case study, we also present a comparative analysis of the performance of our strategy
    with two other techniques for livelock freedom verification, the traditional global analysis
    of FDR and the static livelock analysis of SLAP. This comparative study demonstrates that
    our strategy can be used in practice and that it might be a useful alternative for establishing
    livelock freedom in large systems.

7
  • HELIDA SALLES SANTOS
  • Uma nova classe de medidas de inclusão difusa

  • Orientador : BENJAMIN RENE CALLEJAS BEDREGAL
  • MEMBROS DA BANCA :
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • EDUARDO SILVA PALMEIRA
  • MARCUS PINTO DA COSTA DA ROCHA
  • REGIVAN HUGO NUNES SANTIAGO
  • RENATA HAX SANDER REISER
  • Data: 08/12/2016

  • Mostrar Resumo
  • Este trabalho tem o objetivo de introduzir uma nova classe de medidas de inclusão difusa entre conjuntos difusos. Esta nova abordagem foi baseada nas axiomatizações mais conhecidas com a vantagem de utilizar o método de construção de tais medidas agregando os operadores de implicação. Esses operadores satisfazem algumas propriedades que têm sido amplamente investigadas na literatura, de forma que, por exemplo, a medida de inclusão proposta por Goguen torna-se um caso particular da nossa proposta de medida de inclusão. Apresentamos também diferentes métodos de construção utilizando automorfismos e provamos que com tais medidas podemos construir não só medidas de entropia, mas também distâncias, funções pênalti e medidas de similaridade entre conjuntos difusos. 


  • Mostrar Abstract
  • In this work we discuss a new class of fuzzy subsethood measures between fuzzy sets. We introduce a new definition of a fuzzy subsethood measure as an intersection of other axiomatizations by aggregating fuzzy implication operators. We provide two construction methods to obtain these fuzzy subsethood measures. With our approach we recover some of the classical measures which have been discussed in the literature, as the one given by Goguen. We also show how we can use our developments to generate fuzzy entropies, fuzzy distances, penalty functions and similarity measures. Finally we study some fuzzy indexes generated from this new class of fuzzy
    subsethood measures.

8
  • ANTONINO ALVES FEITOSA NETO
  • Metaheurísticas de Otimização Tradicionais e Híbridas Utilizadas Para Construção de Comitês de Classificação

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • MEMBROS DA BANCA :
  • ANDRÉ CARLOS PONCE DE LEON FERREIRA DE CARVALHO
  • ANNE MAGALY DE PAULA CANUTO
  • DANIEL SABINO AMORIM DE ARAUJO
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • EULANDA MIRANDA DOS SANTOS
  • Data: 09/12/2016

  • Mostrar Resumo
  • Este trabalho aborda o uso de técnicas de otimização tradicionais e híbridas no contexto
    mono e multi-objetivo para otimização do problema de classificação de padrões em comitês
    de classificação. O problema de classificação de padrões é tratado como um problema de
    otimização procurando encontrar o subconjunto de atributos e classificadores do problema
    que minimize o erro de classificação do comitê. São realizados experimentos em diferentes
    cenários mono e multi-objetivo otimizando o erro de classificação e as medidas de boa e má
    diversidade. O objetivo é verificar se adicionar as medidas de diversidade como objetivos
    de otimização resulta em comitês mais acurados. Assim, a contribuição desse trabalho
    é determinar se as medidas de boa e má diversidade podem ser utilizadas em técnicas
    de otimização mono e multi-objetivo como objetivos de otimização para construção de
    comitês de classificadores mais acurados que aqueles construídos pelo mesmo processo,
    porém utilizando somente a acurácia de classificação como objetivo de otimização.


  • Mostrar Abstract
  • This work discusses the use of traditional and hybrid optimization techniques in the
    context mono and multi-objective for optimization of the problem of pattern classification
    in ensembles. The problem of pattern classification is treated as a problem of optimization
    looking to find the subset of attributes and classifiers of problem that minimizes the classification
    error of the ensemble. Experiments are performed in different scenarios mono and
    multi-objective optimizing classification error and the measures of good and bad diversity.
    The objective is to verify if you add the diversity measures as optimization objectives
    results in more accurate ensemble. Thus, the contribution of this study is to determine
    whether the measures of good and bad diversity can be used on optimization techniques
    mono and multi-objective as optimization objectives for construction of committees of
    more accurate classifiers that those built by the same process but using only the accuracy
    of classification as objective of optimization.

2015
Dissertações
1
  • GUSTAVO NOGUEIRA ALVES
  • Cloud Stratus: Uma plataforma de middleware para desenvolvimento de aplicações em nuvem
  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • THAIS VASCONCELOS BATISTA
  • NELIO ALESSANDRO AZEVEDO CACHO
  • FREDERICO ARAUJO DA SILVA LOPES
  • CARLOS ALBERTO KAMIENSKI
  • Data: 28/01/2015

  • Mostrar Resumo
  • Computação em Nuvem é um novo paradigma computacional que possibilita o acesso de forma simples e pervasiva, via rede, a um conjunto de recursos de computação compartilhados e configuráveis. Tais recursos são oferecidos sob demanda para o usuário através de um modelo de uso em que o usuário só paga pelo uso do recurso. Com o avanço desse paradigma, um único serviço oferecido por uma plataforma de nuvem pode não ser suficiente para prover todos os requisitos das aplicações clientes, sendo necessário a  composição de serviços providos por diferentes plataformas. No entanto, as plataformas de nuvem atuais não são implementadas usando padrões comuns, cada uma possui sua própria API e ferramenta de desenvolvimento, o que dificulta a criação da composição. Para facilitar a criação da composição foi proposto o Cloud Integrator, uma plataforma de middleware que provê um ambiente que facilita o desenvolvimento e a execução de aplicações. Tais aplicações são composições de serviços providos por diferentes plataformas de nuvem e representadas através de workflows semânticos. Os mecanismos de composição e seleção escolhem os serviços de nuvem que vão compor a aplicação, considerando metadados acerca dos serviços, como QoS e preço. No entanto, o Cloud Integrator possui algumas limitações: (i) as aplicações criadas são executadas localmente; (ii) usuários não podem especificar a aplicação apenas pela suas entradas e saídas, e; (iii) usuários mais experientes não podem selecionar diretamente qual os serviços que vão executar as atividades do workflow. A fim de tratar as questões mencionadas, o objetivo deste trabalho é propor o Cloud Stratus, uma plataforma de middleware que estende o Cloud Integrator e oferece diferentes formas de se criar aplicações, possibilitando que uma aplicação possa ser especificada apenas através de suas entradas e saídas ou ainda através da seleção de todos os serviços que a compõe. A plataforma ainda possibilita a implantação da aplicação em máquinas virtuais na nuvem, de forma que vários usuários podem acessá-la através da Internet, realiza o acesso e gerenciamento de máquinas virtuais de diferentes plataformas de nuvem e fornece mecanismos para monitoramento de serviços e aferição de parâmetros de QoS.


  • Mostrar Abstract
  • Computação em Nuvem é um novo paradigma computacional que possibilita o acesso de forma simples e pervasiva, via rede, a um conjunto de recursos de computação compartilhados e configuráveis. Tais recursos são oferecidos sob demanda para o usuário através de um modelo de uso em que o usuário só paga pelo uso do recurso. Com o avanço desse paradigma, um único serviço oferecido por uma plataforma de nuvem pode não ser suficiente para prover todos os requisitos das aplicações clientes, sendo necessário a  composição de serviços providos por diferentes plataformas. No entanto, as plataformas de nuvem atuais não são implementadas usando padrões comuns, cada uma possui sua própria API e ferramenta de desenvolvimento, o que dificulta a criação da composição. Para facilitar a criação da composição foi proposto o Cloud Integrator, uma plataforma de middleware que provê um ambiente que facilita o desenvolvimento e a execução de aplicações. Tais aplicações são composições de serviços providos por diferentes plataformas de nuvem e representadas através de workflows semânticos. Os mecanismos de composição e seleção escolhem os serviços de nuvem que vão compor a aplicação, considerando metadados acerca dos serviços, como QoS e preço. No entanto, o Cloud Integrator possui algumas limitações: (i) as aplicações criadas são executadas localmente; (ii) usuários não podem especificar a aplicação apenas pela suas entradas e saídas, e; (iii) usuários mais experientes não podem selecionar diretamente qual os serviços que vão executar as atividades do workflow. A fim de tratar as questões mencionadas, o objetivo deste trabalho é propor o Cloud Stratus, uma plataforma de middleware que estende o Cloud Integrator e oferece diferentes formas de se criar aplicações, possibilitando que uma aplicação possa ser especificada apenas através de suas entradas e saídas ou ainda através da seleção de todos os serviços que a compõe. A plataforma ainda possibilita a implantação da aplicação em máquinas virtuais na nuvem, de forma que vários usuários podem acessá-la através da Internet, realiza o acesso e gerenciamento de máquinas virtuais de diferentes plataformas de nuvem e fornece mecanismos para monitoramento de serviços e aferição de parâmetros de QoS.

2
  • ARTHUR EMANOEL CASSIO DA SILVA E SOUZA
  • Cloud Query Manager: Uso de  Web Semântica para evitar o problema de aprisionamento em IaaS

  • Orientador : NELIO ALESSANDRO AZEVEDO CACHO
  • MEMBROS DA BANCA :
  • NELIO ALESSANDRO AZEVEDO CACHO
  • THAIS VASCONCELOS BATISTA
  • CARLOS ALBERTO KAMIENSKI
  • Data: 28/01/2015

  • Mostrar Resumo
  • O problema de cloud lock-in em plataformas de nuvem é comumente endereçado por três estratégias: (i) uso de camada intermediária que se interpõe aos consumidores de serviços de nuvem e o provedor, (ii) uso de interfaces padronizadas para acesso a nuvem, ou ainda (iii) uso de modelos com especificações abertas. Este trabalho define uma abordagem para avaliar estas estratégias. Tal abordagem foi executada e observou-se que apesar dos avanços conseguidos por estas estratégias, nenhuma delas resolvem efetivamente o problema de cloud lock-in. Neste sentido, esse trabalho propõe o uso de Web Semântica para evitar o cloud lock-in, onde modelos em RDF são usados para especificar os recursos de uma nuvem, que são gerenciados via consultas SPARQL. Nessa direção, esse trabalho: (i) propõe utilizar RDF e SPARQL na gerencia de recurso de nuvem, (ii) apresenta o Cloud Query Manager (CQM), um servidor SPARQL que implementa a proposta, e (iii) avalia três propostas multi-cloud em relação ao CQM na utilização de três plataformas de nuvem.


  • Mostrar Abstract
  • O problema de cloud lock-in em plataformas de nuvem é comumente endereçado por três estratégias: (i) uso de camada intermediária que se interpõe aos consumidores de serviços de nuvem e o provedor, (ii) uso de interfaces padronizadas para acesso a nuvem, ou ainda (iii) uso de modelos com especificações abertas. Este trabalho define uma abordagem para avaliar estas estratégias. Tal abordagem foi executada e observou-se que apesar dos avanços conseguidos por estas estratégias, nenhuma delas resolvem efetivamente o problema de cloud lock-in. Neste sentido, esse trabalho propõe o uso de Web Semântica para evitar o cloud lock-in, onde modelos em RDF são usados para especificar os recursos de uma nuvem, que são gerenciados via consultas SPARQL. Nessa direção, esse trabalho: (i) propõe utilizar RDF e SPARQL na gerencia de recurso de nuvem, (ii) apresenta o Cloud Query Manager (CQM), um servidor SPARQL que implementa a proposta, e (iii) avalia três propostas multi-cloud em relação ao CQM na utilização de três plataformas de nuvem.

3
  • EDUARDO ALEXANDRE FERREIRA SILVA
  • Uma Linguagem para Descrição de Missões em Sistema-de-Sistemas

  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • THAIS VASCONCELOS BATISTA
  • JAIR CAVALCANTI LEITE
  • FLAVIO OQUENDO
  • Data: 02/02/2015

  • Mostrar Resumo
  • Sistema-de-sistemas (System-of-Systems - SoS) é um tipo emergente de sistema computacional formado por um grupo de sistemas constituintes, que são independentes e heterogêneos e se unem para compor um sistema de larga escala visando alcançar uma missão global. Cada sistema constituinte possui seus próprios objetivos, missões individuais, e colaboram para a realização da missão do SoS, chamada missão global.

    Existe uma complexidade inerente no conjunto de missões que estão envolvidas em um SoS, esse deve-se principalmente à natureza independente dos sistemas constituintes, que tendem a evoluir independentemente, potencialmente mantidos por organizações distintas, além dos conflitos de interesse que podem surgir com essa evolução. Com isso, torna-se essencial prover uma linguagem bem definida para descrição e avaliação dessas missões, relacionando-as entre si e provendo um documento comum que possa ser utilizado por todas as partes envolvidas. Essa linguagem deve ser capaz de expressar as missões individuais e globais, dando suporte a todos os relacionamentos existentes entre essas missões, além de expressar informações relacionadas a realização dessas missões.

    O objetivo desse trabalho é apresentar e avaliar uma linguagem para descrição de missões. Visando a definição dessa linguagem, esse trabalho apresenta um mapeamento sistemático acerca dos mecanismos existentes para descrição de missões em SoS, identificando os elementos-chave que compõem a descrição de uma missão nesse contexto. A partir desse mapeamento, propõe-se um modelo conceitual para missões e uma linguagem para descrição de missões. Essa linguagem independe de documentos de arquitetura e outros tipos de modelos de software, visando possibilitar a integração da linguagem de definição de missões em diferentes modelos de desenvolvimento. 


  • Mostrar Abstract
  • Sistema-de-sistemas (System-of-Systems - SoS) é um tipo emergente de sistema computacional formado por um grupo de sistemas constituintes, que são independentes e heterogêneos e se unem para compor um sistema de larga escala visando alcançar uma missão global. Cada sistema constituinte possui seus próprios objetivos, missões individuais, e colaboram para a realização da missão do SoS, chamada missão global.

    Existe uma complexidade inerente no conjunto de missões que estão envolvidas em um SoS, esse deve-se principalmente à natureza independente dos sistemas constituintes, que tendem a evoluir independentemente, potencialmente mantidos por organizações distintas, além dos conflitos de interesse que podem surgir com essa evolução. Com isso, torna-se essencial prover uma linguagem bem definida para descrição e avaliação dessas missões, relacionando-as entre si e provendo um documento comum que possa ser utilizado por todas as partes envolvidas. Essa linguagem deve ser capaz de expressar as missões individuais e globais, dando suporte a todos os relacionamentos existentes entre essas missões, além de expressar informações relacionadas a realização dessas missões.

    O objetivo desse trabalho é apresentar e avaliar uma linguagem para descrição de missões. Visando a definição dessa linguagem, esse trabalho apresenta um mapeamento sistemático acerca dos mecanismos existentes para descrição de missões em SoS, identificando os elementos-chave que compõem a descrição de uma missão nesse contexto. A partir desse mapeamento, propõe-se um modelo conceitual para missões e uma linguagem para descrição de missões. Essa linguagem independe de documentos de arquitetura e outros tipos de modelos de software, visando possibilitar a integração da linguagem de definição de missões em diferentes modelos de desenvolvimento. 

4
  • ITAMIR DE MORAIS BARROCA FILHO
  • Desenvolvimento de aplicações móveis baseadas em sistemas de informações web existentes

  • Orientador : GIBEON SOARES DE AQUINO JUNIOR
  • MEMBROS DA BANCA :
  • GIBEON SOARES DE AQUINO JUNIOR
  • THAIS VASCONCELOS BATISTA
  • ROSSANA MARIA DE CASTRO ANDRADE
  • Data: 05/02/2015

  • Mostrar Resumo
  • Considerando a era da computação móvel percebe-se que os sistemas de informação
    estão passando por um processo de metamorfose para possibilitar que seus usuários utilizem
    novas formas de acessos às informações a partir de dispositivos móveis. Isso se deve
    principalmente ao aumento da popularidade de dispositivos como smartphones e tablets.
    Impulsionado por esse novo cenário de computação, que está mudando velhos hábitos e
    criando novas maneiras da sociedade acessar informações que até então só eram acessíveis
    através de computadores tradicionais, crescem as demandas por aplicações móveis corporativas.
    Esse aumento é ocasionado pela necessidade das empresas garantirem aos seus
    clientes novas formas de interações com seus serviços. Dessa forma, esse trabalho tem o
    objetivo de apresentar um estudo referente ao desenvolvimento de aplicações móveis e
    um processo denominado Metamorphosis, que provê um conjunto de atividades organizadas
    em três fases: requisitos, projeto e implantação, para auxiliar no desenvolvimento
    de aplicações móveis corporativas baseadas em sistemas de informações web existentes.


  • Mostrar Abstract
  • Considerando a era da computação móvel percebe-se que os sistemas de informação
    estão passando por um processo de metamorfose para possibilitar que seus usuários utilizem
    novas formas de acessos às informações a partir de dispositivos móveis. Isso se deve
    principalmente ao aumento da popularidade de dispositivos como smartphones e tablets.
    Impulsionado por esse novo cenário de computação, que está mudando velhos hábitos e
    criando novas maneiras da sociedade acessar informações que até então só eram acessíveis
    através de computadores tradicionais, crescem as demandas por aplicações móveis corporativas.
    Esse aumento é ocasionado pela necessidade das empresas garantirem aos seus
    clientes novas formas de interações com seus serviços. Dessa forma, esse trabalho tem o
    objetivo de apresentar um estudo referente ao desenvolvimento de aplicações móveis e
    um processo denominado Metamorphosis, que provê um conjunto de atividades organizadas
    em três fases: requisitos, projeto e implantação, para auxiliar no desenvolvimento
    de aplicações móveis corporativas baseadas em sistemas de informações web existentes.

5
  • PRISCILLA SUENE DE SANTANA NOGUEIRA SILVERIO
  • Utilizando comitês de classificadores para predição de rendimento escolar

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • MEMBROS DA BANCA :
  • ADJA FERREIRA DE ANDRADE
  • ANDRE MAURICIO CUNHA CAMPOS
  • ANNE MAGALY DE PAULA CANUTO
  • ARAKEN DE MEDEIROS SANTOS
  • Data: 06/02/2015

  • Mostrar Resumo
  • A mineração de dados educacionais (MDE) é um domínio de aplicação na área de Inteligência artificial que tem sido bastante explorado na atualidade.Os avanços tecnológicos e em especial,a crescente utilização dos ambientes virtuais de aprendizagem têm permitido a geração de consideráveis quantidades de dados a serem investigados. Dentre as atividades a serem tratadas nesse contexto está a predição de rendimento escolar de estudantes, a qual pode ser realizadaatravés do emprego de técnicas de aprendizado de máquina. Tais técnicas podem ser utilizadas para classificação dos estudantes em rótulos previamente definidos.Uma das estratégiaspara aplicação dessas técnicas consisteem combina-lasnoprojeto de sistemas multiclassificadores, cuja eficiência pode ser comprovada por resultados já alcançados em outros trabalhos realizados em diversas áreas, tais como: medicina, comércio e biometria.Os dados utilizados nos experimentos foram obtidos por meio das interações entre estudantes em um dos mais utilizados ambientes virtuais de aprendizado denominado moodle. Diante desse breve panorama, o presente trabalho apresenta resultados de diversos experimentos que incluem o emprego de sistemas multiclassifcadores específicos,denominados comitês de classificadores, desse modo visando alcançar melhores resultados na predição de rendimento escolar, ou seja, na busca por maiores percentuais de acurácia na classificação dos estudantes;apresentando uma significativa exploração de dados educacionais e análises relevantes advindas desses experimentos.


  • Mostrar Abstract
  • A mineração de dados educacionais (MDE) é um domínio de aplicação na área de Inteligência artificial que tem sido bastante explorado na atualidade.Os avanços tecnológicos e em especial,a crescente utilização dos ambientes virtuais de aprendizagem têm permitido a geração de consideráveis quantidades de dados a serem investigados. Dentre as atividades a serem tratadas nesse contexto está a predição de rendimento escolar de estudantes, a qual pode ser realizadaatravés do emprego de técnicas de aprendizado de máquina. Tais técnicas podem ser utilizadas para classificação dos estudantes em rótulos previamente definidos.Uma das estratégiaspara aplicação dessas técnicas consisteem combina-lasnoprojeto de sistemas multiclassificadores, cuja eficiência pode ser comprovada por resultados já alcançados em outros trabalhos realizados em diversas áreas, tais como: medicina, comércio e biometria.Os dados utilizados nos experimentos foram obtidos por meio das interações entre estudantes em um dos mais utilizados ambientes virtuais de aprendizado denominado moodle. Diante desse breve panorama, o presente trabalho apresenta resultados de diversos experimentos que incluem o emprego de sistemas multiclassifcadores específicos,denominados comitês de classificadores, desse modo visando alcançar melhores resultados na predição de rendimento escolar, ou seja, na busca por maiores percentuais de acurácia na classificação dos estudantes;apresentando uma significativa exploração de dados educacionais e análises relevantes advindas desses experimentos.

6
  • MÁRCIO ALVES DE MACÊDO
  • Uma máquina de reducao de grafos extensivel para a implementacao de fluxos de trabalho

  • Orientador : MARTIN ALEJANDRO MUSICANTE
  • MEMBROS DA BANCA :
  • MARTIN ALEJANDRO MUSICANTE
  • UMBERTO SOUZA DA COSTA
  • ALBERTO PARDO
  • GENOVEVA VARGAS SOLAR
  • Data: 26/02/2015

  • Mostrar Resumo
  • Máquinas de redução de grafos, utilizadas na implementação de
    linguagens de programação. Elas permitem executar programas mediant a
    transformação de grafos, através da aplicação sucessiva de regras de
    redução.
    A composição de serviços web permite a criação de novos serviços web a
    partir de serviços web já existentes. Linguagens que permitem criar
    composições de serviços web com base em fluxos de trabalho, como BPEL
    e PEWS, são utilizadas com frequência. No entanto tais linguagens
    permitem criar composições utilizando apenas serviços web, o que
    dificulta a criação de composições mais elaboradas. Quando operações
    que não fazem parte do domínio dos serviços web precisam ser
    executadas nas regras de negócio de uma empresa, parte do trabalho é
    realizado de forma ad-hoc. Permitir que diferentes operações possam
    fazer parte de um mesmo fluxo de trabalho, auxilia a criação de fluxos
    de trabalho mais elaborados e automatizados. Esta dissertação pretende
    definir uma linguagem para a criação de composições com operações de
    serviços web, tarefas de big data ou operações definidas pelo usuário;
    definir uma máquina de redução de grafos extensível que permita a
    avaliação dos grafos gerados a partir de programas definidos na
    linguagem proposta e implementar esta máquina como prova de conceito.
    Espera-se que com esta proposta desenvolvedores que já conheçam
    linguagens como BPEL possam implementar composições com diferentes
    tipos de operações, utilizando o conhecimento prévio, de forma a
    aumentar a eficiencia no desenvolvimento de aplicações distribuídas.


  • Mostrar Abstract
  • Máquinas de redução de grafos, utilizadas na implementação de
    linguagens de programação. Elas permitem executar programas mediant a
    transformação de grafos, através da aplicação sucessiva de regras de
    redução.
    A composição de serviços web permite a criação de novos serviços web a
    partir de serviços web já existentes. Linguagens que permitem criar
    composições de serviços web com base em fluxos de trabalho, como BPEL
    e PEWS, são utilizadas com frequência. No entanto tais linguagens
    permitem criar composições utilizando apenas serviços web, o que
    dificulta a criação de composições mais elaboradas. Quando operações
    que não fazem parte do domínio dos serviços web precisam ser
    executadas nas regras de negócio de uma empresa, parte do trabalho é
    realizado de forma ad-hoc. Permitir que diferentes operações possam
    fazer parte de um mesmo fluxo de trabalho, auxilia a criação de fluxos
    de trabalho mais elaborados e automatizados. Esta dissertação pretende
    definir uma linguagem para a criação de composições com operações de
    serviços web, tarefas de big data ou operações definidas pelo usuário;
    definir uma máquina de redução de grafos extensível que permita a
    avaliação dos grafos gerados a partir de programas definidos na
    linguagem proposta e implementar esta máquina como prova de conceito.
    Espera-se que com esta proposta desenvolvedores que já conheçam
    linguagens como BPEL possam implementar composições com diferentes
    tipos de operações, utilizando o conhecimento prévio, de forma a
    aumentar a eficiencia no desenvolvimento de aplicações distribuídas.

7
  • JOSÉ ALEX MEDEIROS DE LIMA
  • Uma Abordagem para Avaliação e Tratamento de Exceções Propagadas no uso de Serviços Web em .NET

  • Orientador : NELIO ALESSANDRO AZEVEDO CACHO
  • MEMBROS DA BANCA :
  • FABIANO CUTIGI FERRARI
  • NELIO ALESSANDRO AZEVEDO CACHO
  • ROBERTA DE SOUZA COELHO
  • Data: 27/02/2015

  • Mostrar Resumo
  • Alta confiabilidade, disponibilidade e tolerância à falha ainda são problemas em aberto em arquiteturas orientadas a serviços (SOA). A possibilidade de geração de aplicações de software, integrando serviços de domínios heterogêneos, de uma forma mais confiável, faz valer a pena enfrentar os desafios inerentes a esse paradigma. Para garantir a qualidade na composição desses serviços, algumas pesquisas se esforçam para propor a adoção de técnicas de verificação para identificar e corrigir os  erros. Nesse contexto, manipulação de exceção é um poderoso mecanismo para incrementar a qualidade em SOA. Diversos trabalhos de pesquisa são concentrados em mecanismos para propagação de exceção em serviços web, implementados em muitas linguagens e frameworks. No entanto, para a extensão do nosso conhecimento, não são encontrados trabalhos que avaliam esses mecanismos em SOA no que diz respeito ao framework .NET. A principal contribuição desse trabalho é avaliar e propor mecanismos de propagação de exceção em SOA para aplicações desenvolvidas com o framework .NET. Nessa direção, esse trabalho: (i) estende um estudo anterior, mostrando a necessidade de se propor uma solução para a propagação de exceção em SOA para aplicações desenvolvidas em .NET, e (ii) apresenta uma solução, tomando como base um modelo obtido a partir dos resultados encontrados em (iii)  e implementa e avalia a solução proposta em duas aplicações reais.


  • Mostrar Abstract
  • Alta confiabilidade, disponibilidade e tolerância à falha ainda são problemas em aberto em arquiteturas orientadas a serviços (SOA). A possibilidade de geração de aplicações de software, integrando serviços de domínios heterogêneos, de uma forma mais confiável, faz valer a pena enfrentar os desafios inerentes a esse paradigma. Para garantir a qualidade na composição desses serviços, algumas pesquisas se esforçam para propor a adoção de técnicas de verificação para identificar e corrigir os  erros. Nesse contexto, manipulação de exceção é um poderoso mecanismo para incrementar a qualidade em SOA. Diversos trabalhos de pesquisa são concentrados em mecanismos para propagação de exceção em serviços web, implementados em muitas linguagens e frameworks. No entanto, para a extensão do nosso conhecimento, não são encontrados trabalhos que avaliam esses mecanismos em SOA no que diz respeito ao framework .NET. A principal contribuição desse trabalho é avaliar e propor mecanismos de propagação de exceção em SOA para aplicações desenvolvidas com o framework .NET. Nessa direção, esse trabalho: (i) estende um estudo anterior, mostrando a necessidade de se propor uma solução para a propagação de exceção em SOA para aplicações desenvolvidas em .NET, e (ii) apresenta uma solução, tomando como base um modelo obtido a partir dos resultados encontrados em (iii)  e implementa e avalia a solução proposta em duas aplicações reais.

8
  • JOSÉ GOMES LOPES FILHO
  • Comitês de Classificadores Neurais - Estratégias para Construção e Emprego

  • Orientador : MARCO CESAR GOLDBARG
  • MEMBROS DA BANCA :
  • MARCO CESAR GOLDBARG
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • ANTONIO CARLOS GAY THOME
  • JOSEFINO CABRAL MELO LIMA
  • Data: 27/02/2015

  • Mostrar Resumo
  • O emprego de classificadores construídos não de forma monolítica, mas a partir da integração de múltiplos agentes (ou classificadores) combinados de diferentes formas em face da estratégia de solução adotada para o problema, vem sendo estudado e divulgado na literatura há mais de 30 anos e tem sido amplamente utilizado para resolver os mais variados problemas uma vez que, em geral, proporciona melhor desempenho que o apresentado individualmente pelos agentes usados como base para formá-los. Comitê (ensemble) é um tipo de SMC – Sistema de Múltiplos Classificadores, que se caracteriza por ser um paradigma de aprendizado no qual uma coleção finita de alternativas globais para solução de um problema é avaliada em grupo com vistas a estabelecer, a partir delas, uma solução única para o problema. Para que isto ocorra, porém, é necessário que os agentes selecionados para compor o comitê sejam ao mesmo tempo acurados (eficazes) e diversos entre si, o que é conhecido na literatura como o dilema da diversidade versus acurácia. Diversas métricas para calcular a diversidade são encontradas na literatura, a dificuldade, no entanto, ainda reside na forma de medi-la não entre pares de agentes, mas do conjunto como um todo e avaliar a relevância relativa desta diversidade frente à acurácia destes mesmos agentes. A construção de um comitê envolve diversos parâmetros com vistas a melhor determinar seu tamanho e selecionar os agentes mais adequados a compô-lo, o que caracteriza um problema de otimização multiobjetivo, onde o espaço de busca cresce exponencialmente com o número de agentes candidatos. Apesar da intensa investigação ocorrida nestas ultimas décadas, ainda não há um consenso sobre a utilização desses parâmetros nem sobre o método de seleção mais apropriado para garantir uma boa composição. Sendo assim, motivado pelas limitações ainda existentes, esta pesquisa tem por objetivo principal realizar um estudo experimental com o intuito de levantar estratégias que possibilitem, através do cálculo e análise das medidas de acurácia, margem e diversidade sobre o conjunto de treino do comitê, identificar a priori a composição mais provável proporcionar e manter, de forma estável, os melhores desempenhos sobre diferentes conjuntos para testes da capacidade de generalização.


  • Mostrar Abstract
  • O emprego de classificadores construídos não de forma monolítica, mas a partir da integração de múltiplos agentes (ou classificadores) combinados de diferentes formas em face da estratégia de solução adotada para o problema, vem sendo estudado e divulgado na literatura há mais de 30 anos e tem sido amplamente utilizado para resolver os mais variados problemas uma vez que, em geral, proporciona melhor desempenho que o apresentado individualmente pelos agentes usados como base para formá-los. Comitê (ensemble) é um tipo de SMC – Sistema de Múltiplos Classificadores, que se caracteriza por ser um paradigma de aprendizado no qual uma coleção finita de alternativas globais para solução de um problema é avaliada em grupo com vistas a estabelecer, a partir delas, uma solução única para o problema. Para que isto ocorra, porém, é necessário que os agentes selecionados para compor o comitê sejam ao mesmo tempo acurados (eficazes) e diversos entre si, o que é conhecido na literatura como o dilema da diversidade versus acurácia. Diversas métricas para calcular a diversidade são encontradas na literatura, a dificuldade, no entanto, ainda reside na forma de medi-la não entre pares de agentes, mas do conjunto como um todo e avaliar a relevância relativa desta diversidade frente à acurácia destes mesmos agentes. A construção de um comitê envolve diversos parâmetros com vistas a melhor determinar seu tamanho e selecionar os agentes mais adequados a compô-lo, o que caracteriza um problema de otimização multiobjetivo, onde o espaço de busca cresce exponencialmente com o número de agentes candidatos. Apesar da intensa investigação ocorrida nestas ultimas décadas, ainda não há um consenso sobre a utilização desses parâmetros nem sobre o método de seleção mais apropriado para garantir uma boa composição. Sendo assim, motivado pelas limitações ainda existentes, esta pesquisa tem por objetivo principal realizar um estudo experimental com o intuito de levantar estratégias que possibilitem, através do cálculo e análise das medidas de acurácia, margem e diversidade sobre o conjunto de treino do comitê, identificar a priori a composição mais provável proporcionar e manter, de forma estável, os melhores desempenhos sobre diferentes conjuntos para testes da capacidade de generalização.

9
  • PAULO EWERTON GOMES FRAGOSO
  • Contribuições para o Processo de Verificação de Satisfatibilidade Módulo Teoria em Event-B.

  • Orientador : DAVID BORIS PAUL DEHARBE
  • MEMBROS DA BANCA :
  • BRUNO EMERSON GURGEL GOMES
  • DAVID BORIS PAUL DEHARBE
  • MARCEL VINICIUS MEDEIROS OLIVEIRA
  • RICHARD WALTER ALAIN BONICHON
  • Data: 09/03/2015

  • Mostrar Resumo
  • Event-B é um método formal de modelagem e verificação de sistemas de transição discre- tos. O desenvolvimento com Event-B produz obrigações de prova que devem ser verifica- das, isto é, ter sua validade verificada para manter a consistência dos modelos produzidos, bem como certificá-los em relação aos requisitos do sistema modelado. Solucionadores de Satisfatibilidade Módulo Teoria são provadores automáticos de teoremas usados para ve- rificar a satisfatibilidade de fórmulas lógicas considerando uma teoria (ou combinação de teorias) subjacente. Solucionadores SMT não apenas lidam com fórmulas extensas em lógica de primeira ordem, como também podem gerar modelos e provas, bem como identi- ficar núcleo insatisfatível. O suporte ferramental para Event-B é provido pela Plataforma Rodin: um IDE extensível, baseado no framework Eclipse, que combina funcionalidades de modelagem e prova. Um plug-in SMT para Rodin tem sido desenvolvido com o objetivo de integrar à plataforma técnicas alternativas e eficientes de verificação. Este trabalho propõe uma série de complementos ao plug-in para solucionadores SMT em Rodin, a sa- ber, melhorias de usabilidade que podem impactar positivamente a produtividade quando obrigações de prova são reportadas como inválidas (isto é, satisfatíveis ou desconhecidas) pelo plug-in. Adicionalmente, algumas modificações na forma como o plug-in lida com resultados válidos por exemplo, ao manipular provas e núcleos insatisfatíveis para gerar novas regras de prova são também consideradas. 


  • Mostrar Abstract
  • Event-B é um método formal de modelagem e verificação de sistemas de transição discre- tos. O desenvolvimento com Event-B produz obrigações de prova que devem ser verifica- das, isto é, ter sua validade verificada para manter a consistência dos modelos produzidos, bem como certificá-los em relação aos requisitos do sistema modelado. Solucionadores de Satisfatibilidade Módulo Teoria são provadores automáticos de teoremas usados para ve- rificar a satisfatibilidade de fórmulas lógicas considerando uma teoria (ou combinação de teorias) subjacente. Solucionadores SMT não apenas lidam com fórmulas extensas em lógica de primeira ordem, como também podem gerar modelos e provas, bem como identi- ficar núcleo insatisfatível. O suporte ferramental para Event-B é provido pela Plataforma Rodin: um IDE extensível, baseado no framework Eclipse, que combina funcionalidades de modelagem e prova. Um plug-in SMT para Rodin tem sido desenvolvido com o objetivo de integrar à plataforma técnicas alternativas e eficientes de verificação. Este trabalho propõe uma série de complementos ao plug-in para solucionadores SMT em Rodin, a sa- ber, melhorias de usabilidade que podem impactar positivamente a produtividade quando obrigações de prova são reportadas como inválidas (isto é, satisfatíveis ou desconhecidas) pelo plug-in. Adicionalmente, algumas modificações na forma como o plug-in lida com resultados válidos por exemplo, ao manipular provas e núcleos insatisfatíveis para gerar novas regras de prova são também consideradas. 

10
  • ELISELMA VIEIRA DOS SANTOS
  • Mecanismo de tolerância a falhas através de escalonamento para uma arquitetura reconfigurável de grão grosso

  • Orientador : MONICA MAGALHAES PEREIRA
  • MEMBROS DA BANCA :
  • BRUNO MOTTA DE CARVALHO
  • IVAN SARAIVA SILVA
  • MONICA MAGALHAES PEREIRA
  • Data: 16/03/2015

  • Mostrar Resumo
  • A evolução contínua da tecnologia de circuitos integrados tem permitido integrar milhares de transistores em uma única pastilha de silício. Devido ao dimensionamento desta tecnologia, a redução do diâmetro do fio e do transistor os tornaram mais frágeis e suscetíveis a quebras, tornando o circuito mais passível a falhas permanentes tanto durante o processo de fabricação quanto durante seu tempo de vida útil. As arquiteturas reconfiguráveis de grão grosso, também chamadas de CGRAs (Coarse Grained Reconfigurable Architectures), têm sido utilizadas como uma alternativa às arquiteturas tradicionais para tentar tolerar essas falhas, devido à sua intrínseca redundância de hardware e ao alto desempenho obtido por essas arquiteturas. Essa dissertação propõe um mecanismo de tolerância a falhas numa CGRA com o objetivo de aumentar a tolerância da arquitetura mesmo considerando uma alta taxa de falhas. O mecanismo proposto foi adicionado ao escalonador da CGRA, que consiste no mecanismo responsável pelo mapeamento das instruções na arquitetura. O mapeamento das instruções ocorre em tempo de execução, traduzindo o código binário sem a necessidade de recompilação. Além disso, para permitir a aceleração da aplicação, o mapeamento é realizado através de um algoritmo guloso de modulo scheduling, que consiste em uma técnica de software pipeline para aceleração de laços. Os resultados obtidos a partir de simulações de injeção de falhas e de execução do escalonador demonstram que, mesmo com o mecanismo de tolerância a falhas proposto, o tempo de mapeamento das instruções se mantém na ordem de microssegundos. Esse resultado permite que o mapeamento das instruções continue sendo realizado em tempo de execução. Além disso, também foi realizado um estudo de taxa de mapeamento do escalonador. Os resultados demonstram que, mesmo com taxas acima de 50% de falhas em unidades funcionas e componentes de interconexão, o escalonador conseguiu mapear instruções na arquitetura em parte das aplicações testadas.  


  • Mostrar Abstract
  • A evolução contínua da tecnologia de circuitos integrados tem permitido integrar milhares de transistores em uma única pastilha de silício. Devido ao dimensionamento desta tecnologia, a redução do diâmetro do fio e do transistor os tornaram mais frágeis e suscetíveis a quebras, tornando o circuito mais passível a falhas permanentes tanto durante o processo de fabricação quanto durante seu tempo de vida útil. As arquiteturas reconfiguráveis de grão grosso, também chamadas de CGRAs (Coarse Grained Reconfigurable Architectures), têm sido utilizadas como uma alternativa às arquiteturas tradicionais para tentar tolerar essas falhas, devido à sua intrínseca redundância de hardware e ao alto desempenho obtido por essas arquiteturas. Essa dissertação propõe um mecanismo de tolerância a falhas numa CGRA com o objetivo de aumentar a tolerância da arquitetura mesmo considerando uma alta taxa de falhas. O mecanismo proposto foi adicionado ao escalonador da CGRA, que consiste no mecanismo responsável pelo mapeamento das instruções na arquitetura. O mapeamento das instruções ocorre em tempo de execução, traduzindo o código binário sem a necessidade de recompilação. Além disso, para permitir a aceleração da aplicação, o mapeamento é realizado através de um algoritmo guloso de modulo scheduling, que consiste em uma técnica de software pipeline para aceleração de laços. Os resultados obtidos a partir de simulações de injeção de falhas e de execução do escalonador demonstram que, mesmo com o mecanismo de tolerância a falhas proposto, o tempo de mapeamento das instruções se mantém na ordem de microssegundos. Esse resultado permite que o mapeamento das instruções continue sendo realizado em tempo de execução. Além disso, também foi realizado um estudo de taxa de mapeamento do escalonador. Os resultados demonstram que, mesmo com taxas acima de 50% de falhas em unidades funcionas e componentes de interconexão, o escalonador conseguiu mapear instruções na arquitetura em parte das aplicações testadas.  

11
  • EMMANUELLY MONTEIRO SILVA DE SOUSA LIMA
  • Números Complexos Graduados e Avaliação de Desempenho de Classificadores

  • Orientador : REGIVAN HUGO NUNES SANTIAGO
  • MEMBROS DA BANCA :
  • REGIVAN HUGO NUNES SANTIAGO
  • ANNE MAGALY DE PAULA CANUTO
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • FABIANA TRISTAO DE SANTANA
  • GRAÇALIZ PEREIRA DIMURO
  • Data: 26/05/2015

  • Mostrar Resumo
  • Este trabalho tem como objetivo introduzir o conceito de números complexos graduados, partindo da definição existente de nÚmeros graduados, mostrar que a forma algÉbrica e polar, bem como algumas propriedades álgÉbricas de números complexos graduados podem ser extendidas do caso crisp. É demostrado como os complexos graduados podem recuperar a noção de números fuzzy e números complexos fuzzy. Por fim, conclui-se o trabalho aplicando os números complexos graduados na avaliação de desempenho de classi ficadores e os resultados obtidos com esta aplicação são analisados.


  • Mostrar Abstract
  • Este trabalho tem como objetivo introduzir o conceito de números complexos graduados, partindo da definição existente de nÚmeros graduados, mostrar que a forma algÉbrica e polar, bem como algumas propriedades álgÉbricas de números complexos graduados podem ser extendidas do caso crisp. É demostrado como os complexos graduados podem recuperar a noção de números fuzzy e números complexos fuzzy. Por fim, conclui-se o trabalho aplicando os números complexos graduados na avaliação de desempenho de classi ficadores e os resultados obtidos com esta aplicação são analisados.

12
  • CÍCERO ALVES DA SILVA
  • Uma plataforma extensível para a transformação de fluxo de dados heterogêneos em cidades inteligentes

  • Orientador : GIBEON SOARES DE AQUINO JUNIOR
  • MEMBROS DA BANCA :
  • GIBEON SOARES DE AQUINO JUNIOR
  • KIEV SANTOS DA GAMA
  • UIRA KULESZA
  • Data: 07/08/2015

  • Mostrar Resumo
  • O ambiente urbano possui uma grande quantidade de dispositivos de tecnologias variadas,
    o que torna difícil a integração dos dados originados nos mesmos devido sua heterogeneidade.
    Porém, é importante que esses dados sejam gerenciados de maneira integrada
    possibilitando a troca de informações entre os domínios existentes e auxiliando na tomada
    de decisão. Ademais, não há como prever a forma que esses dados precisarão ser
    transformados visto que cada aplicação pode necessitar que os mesmos sejam disponibilizados
    obedecendo processamentos especícos. Assim, este trabalho descreve o projeto e
    implementação de uma plataforma cujo objetivo é a integração, transformação e disponibiliza
    ção de uxos de dados provenientes de fontes heterogêneas no âmbito de cidades.
    Além disso, ela dene um uxo de transformação extensível facilitando a criação de novos
    processamentos para um dado existente e a inclusão de um novo tipo de dado, o que
    permite a adequação dos passos denidos para que eles sejam implementados conforme
    as características e restrições de cada tipo integrado. Por m, foi realizado um estudo de
    caso que utilizou o cenário de um estacionamento e avaliou alguns aspectos importantes
    relacionados à implementação da plataforma.


  • Mostrar Abstract
  • O ambiente urbano possui uma grande quantidade de dispositivos de tecnologias variadas,
    o que torna difícil a integração dos dados originados nos mesmos devido sua heterogeneidade.
    Porém, é importante que esses dados sejam gerenciados de maneira integrada
    possibilitando a troca de informações entre os domínios existentes e auxiliando na tomada
    de decisão. Ademais, não há como prever a forma que esses dados precisarão ser
    transformados visto que cada aplicação pode necessitar que os mesmos sejam disponibilizados
    obedecendo processamentos especícos. Assim, este trabalho descreve o projeto e
    implementação de uma plataforma cujo objetivo é a integração, transformação e disponibiliza
    ção de uxos de dados provenientes de fontes heterogêneas no âmbito de cidades.
    Além disso, ela dene um uxo de transformação extensível facilitando a criação de novos
    processamentos para um dado existente e a inclusão de um novo tipo de dado, o que
    permite a adequação dos passos denidos para que eles sejam implementados conforme
    as características e restrições de cada tipo integrado. Por m, foi realizado um estudo de
    caso que utilizou o cenário de um estacionamento e avaliou alguns aspectos importantes
    relacionados à implementação da plataforma.

13
  • JOÃO BATISTA DE SOUZA NETO
  • Um estudo empírico sobre geração de testes com BETA: Avaliação e aperfeiçoamento

  • Orientador : ANAMARIA MARTINS MOREIRA
  • MEMBROS DA BANCA :
  • ANAMARIA MARTINS MOREIRA
  • DAVID BORIS PAUL DEHARBE
  • ROHIT GHEYI
  • Data: 07/08/2015

  • Mostrar Resumo
  • A demanda de sistemas seguros e robustos fez com que crescesse a preocupação em desenvolver software de qualidade. Teste de Software e Métodos Formais são duas abordagens que possuem essa finalidade. Neste contexto, vários esforços vem sendo feitos para unir essas duas abordagens, que podem se complementar e trazer mais qualidade para o software. Em um desses esforços, foi desenvolvida a abordagem e ferramenta BETA (B Based Testing Approach). BETA gera testes de unidade a partir de especificações formais escritas na notação do Método B. O presente trabalho tem o objetivo de contribuir com a evolução e o aperfeiçoamento da abordagem e ferramenta BETA. Em uma primeira linha de ação, este trabalho propôs estratégias de oráculos de teste para a abordagem e desenvolveu um gerador de scripts de teste para a ferramenta. Com isso, este trabalho trouxe mais flexibilidade e automação para as últimas etapas de BETA. Em uma segunda linha de ação, este trabalho realizou um estudo empírico para avaliar a abordagem e ferramenta. Dessa forma, BETA foi aplicada em dois estudos de caso que possuíam diferentes objetivos e complexidades. Em ambos os estudos de caso, os resultados de BETA foram avaliados quantitativamente e qualitativamente. Com esse estudo, este trabalho conseguiu identificar qualidades e limitações de BETA e, com isso, estabelecer uma base para propor melhorias para a abordagem e ferramenta.


  • Mostrar Abstract
  • A demanda de sistemas seguros e robustos fez com que crescesse a preocupação em desenvolver software de qualidade. Teste de Software e Métodos Formais são duas abordagens que possuem essa finalidade. Neste contexto, vários esforços vem sendo feitos para unir essas duas abordagens, que podem se complementar e trazer mais qualidade para o software. Em um desses esforços, foi desenvolvida a abordagem e ferramenta BETA (B Based Testing Approach). BETA gera testes de unidade a partir de especificações formais escritas na notação do Método B. O presente trabalho tem o objetivo de contribuir com a evolução e o aperfeiçoamento da abordagem e ferramenta BETA. Em uma primeira linha de ação, este trabalho propôs estratégias de oráculos de teste para a abordagem e desenvolveu um gerador de scripts de teste para a ferramenta. Com isso, este trabalho trouxe mais flexibilidade e automação para as últimas etapas de BETA. Em uma segunda linha de ação, este trabalho realizou um estudo empírico para avaliar a abordagem e ferramenta. Dessa forma, BETA foi aplicada em dois estudos de caso que possuíam diferentes objetivos e complexidades. Em ambos os estudos de caso, os resultados de BETA foram avaliados quantitativamente e qualitativamente. Com esse estudo, este trabalho conseguiu identificar qualidades e limitações de BETA e, com isso, estabelecer uma base para propor melhorias para a abordagem e ferramenta.

14
  • JADSON JOSE DOS SANTOS
  • Avaliação Sistemática de uma Abordagem para Integração de Funcionalidades em Sistemas Web Clonados

  • Orientador : UIRA KULESZA
  • MEMBROS DA BANCA :
  • UIRA KULESZA
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • GLEYDSON DE AZEVEDO FERREIRA LIMA
  • LEOPOLDO MOTTA TEIXEIRA
  • Data: 13/08/2015

  • Mostrar Resumo
  • A engenharia de linhas de produto de software traz vantagens quando comparado ao desenvolvimento tradicional de sistemas no que diz respeito a customização em massa dos seus componentes, reduzindo o custo e aumentando a qualidade de produção de uma família de sistemas. Contudo, em determinados cenários, a manutenção de cópias separadas – clones – de um sistema tem sido explorado por ser uma abordagem mais simples e fácil de gerenciar.

    Esta dissertação de mestrado busca avaliar qualitativamente uma abordagem proposta para auxiliar a reconciliação de funcionalidades entre sistemas web clonados. A  abordagem analisada é baseada na mineração de informações sobre evoluções dos sistemas e a organizações dessas informações de forma estruturada, além de uma análise de determinados tipos de conflitos que tem por finalidade indicar possíveis problemas na integração de funcionalidades entre versões clonadas de um mesmo sistema, não indicados por ferramentas tradicionais de controle de versão.

    O estudo empírico conduzido nesta dissertação envolveu uma avaliação qualitativa dos conflitos gerados pela abordagem. Os resultados do estudo mostraram a viabilidade de utilização da abordagem para resolução de diferentes tipos de conflitos quando integrando funcionalidades desenvolvidas de forma independente em sistemas web clonados.


  • Mostrar Abstract
  • A engenharia de linhas de produto de software traz vantagens quando comparado ao desenvolvimento tradicional de sistemas no que diz respeito a customização em massa dos seus componentes, reduzindo o custo e aumentando a qualidade de produção de uma família de sistemas. Contudo, em determinados cenários, a manutenção de cópias separadas – clones – de um sistema tem sido explorado por ser uma abordagem mais simples e fácil de gerenciar.

    Esta dissertação de mestrado busca avaliar qualitativamente uma abordagem proposta para auxiliar a reconciliação de funcionalidades entre sistemas web clonados. A  abordagem analisada é baseada na mineração de informações sobre evoluções dos sistemas e a organizações dessas informações de forma estruturada, além de uma análise de determinados tipos de conflitos que tem por finalidade indicar possíveis problemas na integração de funcionalidades entre versões clonadas de um mesmo sistema, não indicados por ferramentas tradicionais de controle de versão.

    O estudo empírico conduzido nesta dissertação envolveu uma avaliação qualitativa dos conflitos gerados pela abordagem. Os resultados do estudo mostraram a viabilidade de utilização da abordagem para resolução de diferentes tipos de conflitos quando integrando funcionalidades desenvolvidas de forma independente em sistemas web clonados.

15
  • HADLEY MAGNO DA COSTA SIQUEIRA
  • Proposta de implementação de um processador multithreading com características de previsibilidade.

  • Orientador : MARCIO EDUARDO KREUTZ
  • MEMBROS DA BANCA :
  • ALISSON VASCONCELOS DE BRITO
  • MARCIO EDUARDO KREUTZ
  • MONICA MAGALHAES PEREIRA
  • Data: 18/08/2015

  • Mostrar Resumo

  • O projeto de sistemas embarcados de tempo real requer um controle preciso da passagem de tempo na computação realizada pelos módulos e na comunicação entre os mesmos. Geralmente, esses sistemas são constituídos de vários módulos, cada um projetado para uma tarefa específica e com comunicação restrita com os demais módulos a fim de se obter a temporização necessária. Essa estratégia, chamada de arquitetura federada, já está se tornando inviável em frente as demandas atuais de custo, desempenho e qualidade exigidas dos sistema embarcados. Para atacar esse problema, atualmente se propõe o uso de arquiteturas integradas, que consistem em um ou poucos circuitos realizando várias tarefas em paralelo de forma mais eficiente e com redução de custos. Entretanto, é preciso garantir que a arquitetura integrada possua componibilidade temporal, ou seja, a capacidade de projetar cada tarefa temporalmente isolada das demais a fim de manter as características individuais de cada tarefa. As “Precision Timed Machines” são uma abordagem de arquitetura integrada que advoca o uso de processadores “multithreaded” para garantir componibilidade temporal. Dessa forma, o presente trabalho apresenta a implementação de uma “Precision Timed Machine” chamada Hivek-RT. Este processador, que é um VLIW com suporte à “Simultaneous Multithreading”, é capaz de executar eficientemente tarefas de tempo real quando comparado à um processador tradicional. Além da execução eficiente, a arquitetura facilita a implementação, do ponto de vista de programação, de tarefas de tempo real.


  • Mostrar Abstract

  • O projeto de sistemas embarcados de tempo real requer um controle preciso da passagem de tempo na computação realizada pelos módulos e na comunicação entre os mesmos. Geralmente, esses sistemas são constituídos de vários módulos, cada um projetado para uma tarefa específica e com comunicação restrita com os demais módulos a fim de se obter a temporização necessária. Essa estratégia, chamada de arquitetura federada, já está se tornando inviável em frente as demandas atuais de custo, desempenho e qualidade exigidas dos sistema embarcados. Para atacar esse problema, atualmente se propõe o uso de arquiteturas integradas, que consistem em um ou poucos circuitos realizando várias tarefas em paralelo de forma mais eficiente e com redução de custos. Entretanto, é preciso garantir que a arquitetura integrada possua componibilidade temporal, ou seja, a capacidade de projetar cada tarefa temporalmente isolada das demais a fim de manter as características individuais de cada tarefa. As “Precision Timed Machines” são uma abordagem de arquitetura integrada que advoca o uso de processadores “multithreaded” para garantir componibilidade temporal. Dessa forma, o presente trabalho apresenta a implementação de uma “Precision Timed Machine” chamada Hivek-RT. Este processador, que é um VLIW com suporte à “Simultaneous Multithreading”, é capaz de executar eficientemente tarefas de tempo real quando comparado à um processador tradicional. Além da execução eficiente, a arquitetura facilita a implementação, do ponto de vista de programação, de tarefas de tempo real.

16
  • GUSTAVO SIZÍLIO NERY
  • UM AMBIENTE DE SUPORTE A EXPERIMENTOS CONTROLADOS ESPECIFICADOS EM EXPDSL

  • Orientador : EDUARDO HENRIQUE DA SILVA ARANHA
  • MEMBROS DA BANCA :
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • FERNANDO MARQUES FIGUEIRA FILHO
  • RODRIGO BONIFACIO DE ALMEIDA
  • UIRA KULESZA
  • Data: 19/08/2015

  • Mostrar Resumo
  • Um estudo empírico consiste em um teste que compara aquilo que acreditamos em relação àquilo que observamos. Existem várias formas de estudos empíricos, dentre eles o estudo de caso, pesquisas e experimentos controlados, todos com a essência de buscar evidências para validação de uma teoria. A realização desses estudos representam papel fundamental na comunidade cientifica, principalmente o experimento controlado, que é considerado o método clássico dentre os estudos empíricos. Um experimento controlado oferece controle sobre as variáveis  de um estudo, permitindo a criação de estudos mais focados e com potencial estatístico para resultados significativos, usados na validação de hipóteses.

     

    Na área de engenharia de software, existe uma necessidade cada vez mais evidente de elaboração e execução de experimentos controlados. Esta realidade tem trazido discussões de como realizar esses experimentos com planejamento, execução e análise de maneira mais eficiente. Sendo assim, a busca por alternativas que apoiem o pesquisador no processo de experimentação tem sido um tópico de crescente interesse. Este trabalho tem como objetivo propor a infraestrutura de um ambiente  de suporte a experimentos controlados que  auxilie o pesquisador durante o planejamento, formalização, execução e análise de seus experimentos. Durante a dissertação serão apresentados: (i) uma análise comparativa das ferramentas de suporte disponíveis, elencando os requisitos e como cada ferramenta o atende; (ii) a arquitetura elaborada para o ambiente proposto, como ela se organiza e como parte dela foi implementada; (iii) a implementação de um componente visual para edição de DSLs, o Visual ExpDSL, utilizado para a especificação de experimentos na linguagem ExpDSL;  (iv) e o planejamento, execução e análise dos resultados de um estudo de caso elaborado para avaliar a aplicação da ferramenta em um cenário real de execução de um experimento.


  • Mostrar Abstract
  • Um estudo empírico consiste em um teste que compara aquilo que acreditamos em relação àquilo que observamos. Existem várias formas de estudos empíricos, dentre eles o estudo de caso, pesquisas e experimentos controlados, todos com a essência de buscar evidências para validação de uma teoria. A realização desses estudos representam papel fundamental na comunidade cientifica, principalmente o experimento controlado, que é considerado o método clássico dentre os estudos empíricos. Um experimento controlado oferece controle sobre as variáveis  de um estudo, permitindo a criação de estudos mais focados e com potencial estatístico para resultados significativos, usados na validação de hipóteses.

     

    Na área de engenharia de software, existe uma necessidade cada vez mais evidente de elaboração e execução de experimentos controlados. Esta realidade tem trazido discussões de como realizar esses experimentos com planejamento, execução e análise de maneira mais eficiente. Sendo assim, a busca por alternativas que apoiem o pesquisador no processo de experimentação tem sido um tópico de crescente interesse. Este trabalho tem como objetivo propor a infraestrutura de um ambiente  de suporte a experimentos controlados que  auxilie o pesquisador durante o planejamento, formalização, execução e análise de seus experimentos. Durante a dissertação serão apresentados: (i) uma análise comparativa das ferramentas de suporte disponíveis, elencando os requisitos e como cada ferramenta o atende; (ii) a arquitetura elaborada para o ambiente proposto, como ela se organiza e como parte dela foi implementada; (iii) a implementação de um componente visual para edição de DSLs, o Visual ExpDSL, utilizado para a especificação de experimentos na linguagem ExpDSL;  (iv) e o planejamento, execução e análise dos resultados de um estudo de caso elaborado para avaliar a aplicação da ferramenta em um cenário real de execução de um experimento.

17
  • JEAN GUERETHES FERNANDES GUEDES
  • Uma Proposta de Solução para Funcionamento Offline em Aplicações Android

  • Orientador : GIBEON SOARES DE AQUINO JUNIOR
  • MEMBROS DA BANCA :
  • GIBEON SOARES DE AQUINO JUNIOR
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • FERNANDO ANTONIO MOTA TRINTA
  • Data: 28/08/2015

  • Mostrar Resumo
  • Diante da crescente demanda pela criação de aplicativos móveis, impulsionada pelo uso
    cada vez mais frequente de smartphones e tablets, cresceu na sociedade a necessidade por
    acesso a dados remotos de forma integral na utilização do aplicativo móvel em ambientes
    sem conectividade, em que não há disponibilização de acesso à rede em todos os momentos.
    Diante dessa realidade, esse trabalho teve como objetivo o desenvolvimento de uma solução
    através de um framework, que apresente como principais funções o provimento de um
    mecanismo de persistência, replicação e sincronização dos dados, contemplando a criação,
    remoção, atualização e visualização dos dados persistidos ou requisitados, mesmo estando
    o dispositivo móvel sem conectividade com a rede. Do ponto de vista das práticas de
    programação e arquitetura, isso reflete em definir estratégias para persistência de dados
    local, replicação e sincronização de dados. Através de um estudo controlado foi possível
    validar a solução proposta, sendo constatado ganhos como a redução na quantidade de
    linhas de código e de quantidade de tempo necessários para realizar o desenvolvimento de
    um aplicativo sem que houvesse aumento significativo para a realização das operações.


  • Mostrar Abstract
  • Diante da crescente demanda pela criação de aplicativos móveis, impulsionada pelo uso
    cada vez mais frequente de smartphones e tablets, cresceu na sociedade a necessidade por
    acesso a dados remotos de forma integral na utilização do aplicativo móvel em ambientes
    sem conectividade, em que não há disponibilização de acesso à rede em todos os momentos.
    Diante dessa realidade, esse trabalho teve como objetivo o desenvolvimento de uma solução
    através de um framework, que apresente como principais funções o provimento de um
    mecanismo de persistência, replicação e sincronização dos dados, contemplando a criação,
    remoção, atualização e visualização dos dados persistidos ou requisitados, mesmo estando
    o dispositivo móvel sem conectividade com a rede. Do ponto de vista das práticas de
    programação e arquitetura, isso reflete em definir estratégias para persistência de dados
    local, replicação e sincronização de dados. Através de um estudo controlado foi possível
    validar a solução proposta, sendo constatado ganhos como a redução na quantidade de
    linhas de código e de quantidade de tempo necessários para realizar o desenvolvimento de
    um aplicativo sem que houvesse aumento significativo para a realização das operações.

18
  • JULIANA DE ARAÚJO OLIVEIRA
  • Um Estudo Comparativo entre a Evolução do Comportamento Excepcional em Aplicações Java e Android

  • Orientador : NELIO ALESSANDRO AZEVEDO CACHO
  • MEMBROS DA BANCA :
  • NELIO ALESSANDRO AZEVEDO CACHO
  • GIBEON SOARES DE AQUINO JUNIOR
  • FERNANDO JOSÉ CASTOR DE LIMA FILHO
  • Data: 31/08/2015

  • Mostrar Resumo
  • Um sistema confiável deve garantir que, na presença de situações errôneas o sistema vai
    continuar executando corretamente. Aplicações Java fazem uso de uma linguagem de
    programação que fornece um mecanismo de tratamento de exceção voltado à robustez.
    Java é bastante utilizada em aplicações Desktop e Web. A plataforma também provê um
    ambiente para que as aplicações possam executar em dispositivos móveis. Porém, devido
    aos avanços da computação móvel, novas aplicações vem surgindo. Elas são capazes de
    explorar informações que mudam dinamicamente, obtidas dos usuários ou do ambiente,
    e precisam lidar com um número crescente de condições errôneas, além de satisfazer
    exigências rigorosas de conabilidade. Como resultado, outras plataformas vem emergindo
    para dar suporte a implementação de aplicações móveis. Android tem se estabelecido como
    uma das principais plataformas para aplicações móveis do mercado. Aplicativos Android
    são extremamente atraentes para seus usuários, dado a facilidade com que podem ser
    obtidos e instalados no dispositivo. O tratamento de exceções é o principal mecanismo
    que as aplicações Android e Java usam para reportar e lidar com erros. Portanto, o
    uso correto desse mecanismo está diretamente relacionado à robustez dessas aplicações.
    Aplicações Java e Android são desenvolvidas em ambientes com características diferentes
    e com propósitos distintos. Este fato nos motiva a avaliar se esse mecanismo está sendo
    adequado para ambos os contextos. Neste contexto, esse trabalho se propõe a: (i) Realizar
    um estudo empírico com aplicações Java; (ii) Implementar um driver para aplicações
    Android ; (iii) Implementar uma versão da eFlowMining para Android ; (iv) Realização
    de um estudo empírico com aplicações Android ; (v) Realizar um comparativo entre os
    resultados obtidos dos dois estudos.


  • Mostrar Abstract
  • Um sistema confiável deve garantir que, na presença de situações errôneas o sistema vai
    continuar executando corretamente. Aplicações Java fazem uso de uma linguagem de
    programação que fornece um mecanismo de tratamento de exceção voltado à robustez.
    Java é bastante utilizada em aplicações Desktop e Web. A plataforma também provê um
    ambiente para que as aplicações possam executar em dispositivos móveis. Porém, devido
    aos avanços da computação móvel, novas aplicações vem surgindo. Elas são capazes de
    explorar informações que mudam dinamicamente, obtidas dos usuários ou do ambiente,
    e precisam lidar com um número crescente de condições errôneas, além de satisfazer
    exigências rigorosas de conabilidade. Como resultado, outras plataformas vem emergindo
    para dar suporte a implementação de aplicações móveis. Android tem se estabelecido como
    uma das principais plataformas para aplicações móveis do mercado. Aplicativos Android
    são extremamente atraentes para seus usuários, dado a facilidade com que podem ser
    obtidos e instalados no dispositivo. O tratamento de exceções é o principal mecanismo
    que as aplicações Android e Java usam para reportar e lidar com erros. Portanto, o
    uso correto desse mecanismo está diretamente relacionado à robustez dessas aplicações.
    Aplicações Java e Android são desenvolvidas em ambientes com características diferentes
    e com propósitos distintos. Este fato nos motiva a avaliar se esse mecanismo está sendo
    adequado para ambos os contextos. Neste contexto, esse trabalho se propõe a: (i) Realizar
    um estudo empírico com aplicações Java; (ii) Implementar um driver para aplicações
    Android ; (iii) Implementar uma versão da eFlowMining para Android ; (iv) Realização
    de um estudo empírico com aplicações Android ; (v) Realizar um comparativo entre os
    resultados obtidos dos dois estudos.

19
  • JOSÉ GILMAR ALVES SANTOS JUNIOR
  • Um Estudo Sobre Aprendizado de Máquina Aplicado à Modelagem de Retornos de Ações

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • MEMBROS DA BANCA :
  • ANNE MAGALY DE PAULA CANUTO
  • ANTONIO CARLOS GAY THOME
  • JOAO MEDEIROS DE ARAUJO
  • RICARDO BASTOS CAVALCANTE PRUDÊNCIO
  • Data: 15/09/2015

  • Mostrar Resumo
  • O comportamento do preço de ações tem sido objeto de estudo há mais de um século, e as primeiras aplicações de inteligência artificial na previsão de retornos datam da década de 1980. Neste trabalho, foi realizado um estudo sobre a aplicação de máquinas de vetores de suporte na previsão da distribuição de probabilidade de taxas de retorno futuras dos preços de ações do mercado brasileiro: com base em valores anteriores das taxas de retorno e volatilidades, ambas extraídas dos preços, deseja-se verificar se a sua utilização é vantajosa em relação a modelos estatísticos mais simples. Através da comparação do desempenho de diversos modelos (lineares, não lineares baseados em máquinas de vetores de suporte e híbridos) em séries temporais com amostragens semanal, diária e intraday de dez minutos, foi evidenciado que: (a) modelos híbridos geram previsões mais precisas do que os demais nas séries de volatilidades; (b) a aplicação de máquinas de vetores de suporte na previsão de valores esperados para taxas de retorno não leva a ganhos em relação a modelos lineares; e (c) modelos compostos por um linear para a previsão de valores esperados e um híbrido para previsão de volatilidades capturam adequadamente as características das séries de taxas de retorno e, dentre todos os modelos avaliados, produzem menor número de intervalos de previsão inválidos.


  • Mostrar Abstract
  • O comportamento do preço de ações tem sido objeto de estudo há mais de um século, e as primeiras aplicações de inteligência artificial na previsão de retornos datam da década de 1980. Neste trabalho, foi realizado um estudo sobre a aplicação de máquinas de vetores de suporte na previsão da distribuição de probabilidade de taxas de retorno futuras dos preços de ações do mercado brasileiro: com base em valores anteriores das taxas de retorno e volatilidades, ambas extraídas dos preços, deseja-se verificar se a sua utilização é vantajosa em relação a modelos estatísticos mais simples. Através da comparação do desempenho de diversos modelos (lineares, não lineares baseados em máquinas de vetores de suporte e híbridos) em séries temporais com amostragens semanal, diária e intraday de dez minutos, foi evidenciado que: (a) modelos híbridos geram previsões mais precisas do que os demais nas séries de volatilidades; (b) a aplicação de máquinas de vetores de suporte na previsão de valores esperados para taxas de retorno não leva a ganhos em relação a modelos lineares; e (c) modelos compostos por um linear para a previsão de valores esperados e um híbrido para previsão de volatilidades capturam adequadamente as características das séries de taxas de retorno e, dentre todos os modelos avaliados, produzem menor número de intervalos de previsão inválidos.

20
  • HUGO BARROS CAMBOIM
  • Cloud Computing Assisted Smart Surveillance Based Transportation-Safety System to Improve Crime Assistance on Smart Cities

  • Orientador : AUGUSTO JOSE VENANCIO NETO
  • MEMBROS DA BANCA :
  • GIBEON SOARES DE AQUINO JUNIOR
  • AUGUSTO JOSE VENANCIO NETO
  • EDUARDO COELHO CERQUEIRA
  • Data: 17/12/2015

  • Mostrar Resumo
  • Smart video surveillance plays a key role in offering technological assistance in public safety scenarios, due to its potential to allow events and objects to be automatically detected in real-time. The Smart video surveillance technology has attracted special attention in the field of public safety, particularly  in vehicular environments by the ability in assisting mission critical scenarios through real-time video processing based automatic detections (e.g., assaults, kidnaps, acts of violence etc.). Hence, it is possible to enable a tradeoff to be made between reactive and pro-active authorities when taking action, seeking to keep customized alert systems, carry out more efficient planning, and thus provide society with a better quality of life. Moreover, the association to Cloud Computing capabilities, is likely to provide advanced perspectives to smart surveillance applications, in terms to provisioning enhanced: (i) processing, to allow for deploying smart computing techniques for improved accuracy; (ii) storage, to adopt a wide variety of templates; (iii), and ubiquitous access, to keep connected everywhere and to any device. The investigation carried in this work focus in deploying a smart surveillance driven cloud-enabled approach to allow for event-based mobile applications in the public safety field. The objective is to allow optimized mobile applications, by which exploiting event-based scheme to provide to low resource consumption (energy, cpu and network resources) perspectives in comparison to the classic reactive approach. The evaluation is carried out in a set of experiments over a real testbed, which demonstrates that the proposal outperforms the classical mobile computing scheme.


  • Mostrar Abstract
  • Smart video surveillance plays a key role in offering technological assistance in public safety scenarios, due to its potential to allow events and objects to be automatically detected in real-time. The Smart video surveillance technology has attracted special attention in the field of public safety, particularly  in vehicular environments by the ability in assisting mission critical scenarios through real-time video processing based automatic detections (e.g., assaults, kidnaps, acts of violence etc.). Hence, it is possible to enable a tradeoff to be made between reactive and pro-active authorities when taking action, seeking to keep customized alert systems, carry out more efficient planning, and thus provide society with a better quality of life. Moreover, the association to Cloud Computing capabilities, is likely to provide advanced perspectives to smart surveillance applications, in terms to provisioning enhanced: (i) processing, to allow for deploying smart computing techniques for improved accuracy; (ii) storage, to adopt a wide variety of templates; (iii), and ubiquitous access, to keep connected everywhere and to any device. The investigation carried in this work focus in deploying a smart surveillance driven cloud-enabled approach to allow for event-based mobile applications in the public safety field. The objective is to allow optimized mobile applications, by which exploiting event-based scheme to provide to low resource consumption (energy, cpu and network resources) perspectives in comparison to the classic reactive approach. The evaluation is carried out in a set of experiments over a real testbed, which demonstrates that the proposal outperforms the classical mobile computing scheme.

21
  • FELIPE SAMPAIO DANTAS DA SILVA
  • Controle de Mobilidade Infraestruturado e Orientado à Qualidade para Maximização de Admissões em Sistemas WiNeMo: Uma Abordagem Definida por Software

  • Orientador : AUGUSTO JOSE VENANCIO NETO
  • MEMBROS DA BANCA :
  • NELIO ALESSANDRO AZEVEDO CACHO
  • AUGUSTO JOSE VENANCIO NETO
  • FLAVIO DE OLIVEIRA SILVA
  • Data: 18/12/2015

  • Mostrar Resumo
  • A popularização das redes sem fio e a crescente proliferação de dispositivos móveis requerem o desenvolvimento de mecanismos de controle de mobilidade que suportem as diferentes demandas de tráfego sob características de rede diversas. Um grande obstáculo no desenvolvimento deste tipo de tecnologia é a complexidade envolvida no gerenciamento de todas as informações de mobilidade, principalmente quando se considera um grande número de dispositivos. Além disso é preciso lidar com toda a sobrecarga de sinalização necessária para controlar estes procedimentos na rede de maneira eficiente. Várias iniciativas propostas pela comunidade científica tratam deste assunto de maneira ineficiente, apresentando soluções que dependam da atuação explícita do objeto móvel (Moving Object - MO), responsável por acionar o processo de mobilidade, geralmente guiada exclusivamente por aspectos físicos, tais como RSS (Received Signal Strength) dos pontos de acesso (Point of Attachment - PoA) candidatos. Diante disso, este trabalho tem como objetivo conceber, avaliar e validar uma infraestrutura de comunicação para o gerenciamento de mobilidade em sistemas WiNeMo (Wireless Networking for Moving Objects), fazendo uso da flexibilidade provida pelo paradigma das Redes Definidas por Software (Software Defined Networking -  SDN), onde as funções de rede, incluindo o gerenciamento de mobilidade e qualidade de serviço (Quality of Service - QoS), podem ser facilmente estendidas, tais como o software no plano de controle, sem sobrecarga computacional, e atualizações nos dispositivos de rede. Como principais contribuições, destacam-se: (i) predição e controle de mobilidade infraestruturado; (ii) seleção de melhor ponto de acesso e aprovisionamento de recursos com base nos requisitos de QoS das aplicações dos objetos móveis; (iii) balanceamento de carga por mobilidade, em casos de exaustão de recursos no ponto de acesso pretendido; e (iv) setup de handover com base no IEEE 802.21.


  • Mostrar Abstract
  • A popularização das redes sem fio e a crescente proliferação de dispositivos móveis requerem o desenvolvimento de mecanismos de controle de mobilidade que suportem as diferentes demandas de tráfego sob características de rede diversas. Um grande obstáculo no desenvolvimento deste tipo de tecnologia é a complexidade envolvida no gerenciamento de todas as informações de mobilidade, principalmente quando se considera um grande número de dispositivos. Além disso é preciso lidar com toda a sobrecarga de sinalização necessária para controlar estes procedimentos na rede de maneira eficiente. Várias iniciativas propostas pela comunidade científica tratam deste assunto de maneira ineficiente, apresentando soluções que dependam da atuação explícita do objeto móvel (Moving Object - MO), responsável por acionar o processo de mobilidade, geralmente guiada exclusivamente por aspectos físicos, tais como RSS (Received Signal Strength) dos pontos de acesso (Point of Attachment - PoA) candidatos. Diante disso, este trabalho tem como objetivo conceber, avaliar e validar uma infraestrutura de comunicação para o gerenciamento de mobilidade em sistemas WiNeMo (Wireless Networking for Moving Objects), fazendo uso da flexibilidade provida pelo paradigma das Redes Definidas por Software (Software Defined Networking -  SDN), onde as funções de rede, incluindo o gerenciamento de mobilidade e qualidade de serviço (Quality of Service - QoS), podem ser facilmente estendidas, tais como o software no plano de controle, sem sobrecarga computacional, e atualizações nos dispositivos de rede. Como principais contribuições, destacam-se: (i) predição e controle de mobilidade infraestruturado; (ii) seleção de melhor ponto de acesso e aprovisionamento de recursos com base nos requisitos de QoS das aplicações dos objetos móveis; (iii) balanceamento de carga por mobilidade, em casos de exaustão de recursos no ponto de acesso pretendido; e (iv) setup de handover com base no IEEE 802.21.

Teses
1
  • CARLOS ALBERTO NUNES MACHADO
  • Uma Linguagem de Descrição Arquitetural Baseada em uma Arquitetura de Referência para Sistemas Ubíquos

  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • THAIS VASCONCELOS BATISTA
  • JAIR CAVALCANTI LEITE
  • UIRA KULESZA
  • ELISA YUMI NAKAGAWA
  • GUSTAVO HENRIQUE MATOS BEZERRA MOTTA
  • Data: 29/01/2015

  • Mostrar Resumo
  • A computação ubíqua é um paradigma no qual dispositivos com capacidade de processamento e comunicação são embutidos nos elementos comuns de nossas vidas (casas, carros, máquinas fotográficas, telefones, escolas, museus, etc), provendo serviços com um alto grau de mobilidade e transparência. O desenvolvimento de sistemas ubíquos é uma tarefa complexa,  uma vez que envolve várias áreas da computação, como Engenharia de Software, Inteligência Artificial e Sistemas Distribuídos. Essa tarefa torna-se ainda mais complexa  pela ausência de uma arquitetura de referência para guiar o desenvolvimento de tais sistemas. Arquiteturas de referência têm sido usadas para fornecer uma base comum e dar diretrizes para a construção de arquiteturas de softwares  para diferentes classes de sistemas. Por outro lado, as linguagens de descrição arquitetural (ADLs) fornecem uma sintaxe para representação estrutural dos elementos arquiteturais, suas restrições e interações, permitindo-se expressar modelo arquitetural de sistemas. Atualmente não há, na literatura, ADLs baseadas em arquiteturas de referência  para o domínio de computação ubíqua. De forma a permitir a modelagem arquitetural de aplicações ubíquas, esse trabalho tem como objetivo principal especificar UbiACME, uma linguagem de descrição arquitetural  para aplicações ubíquas, bem como disponibilizar a ferramenta UbiACME Studio, que permitirá arquitetos de software realizar modelagens usando UbiACME. Para esse fim, inicialmente realizamos uma revisão sistemática, de forma a investigar na literatura relacionada com sistemas ubíquos, os elementos comuns  a esses sistemas que devem ser considerados no projeto de UbiACME. Além disso, com base na revisão sistemática, definimos uma arquitetura de referência  para sistemas ubíquos, RA-Ubi, que é a base para a definição dos elementos necessários para a modelagem arquitetural e, portanto, fornece subsídios para a definição dos elementos de UbiACME. Por fim, de forma a validar a linguagem e a ferramenta, apresentamos um experimento controlado onde arquitetos modelam uma aplicação ubíqua usando UbiACME Studio e comparam com a modelagem da mesma aplicação em SySML. 

  • Mostrar Abstract
  • A computação ubíqua é um paradigma no qual dispositivos com capacidade de processamento e comunicação são embutidos nos elementos comuns de nossas vidas (casas, carros, máquinas fotográficas, telefones, escolas, museus, etc), provendo serviços com um alto grau de mobilidade e transparência. O desenvolvimento de sistemas ubíquos é uma tarefa complexa,  uma vez que envolve várias áreas da computação, como Engenharia de Software, Inteligência Artificial e Sistemas Distribuídos. Essa tarefa torna-se ainda mais complexa  pela ausência de uma arquitetura de referência para guiar o desenvolvimento de tais sistemas. Arquiteturas de referência têm sido usadas para fornecer uma base comum e dar diretrizes para a construção de arquiteturas de softwares  para diferentes classes de sistemas. Por outro lado, as linguagens de descrição arquitetural (ADLs) fornecem uma sintaxe para representação estrutural dos elementos arquiteturais, suas restrições e interações, permitindo-se expressar modelo arquitetural de sistemas. Atualmente não há, na literatura, ADLs baseadas em arquiteturas de referência  para o domínio de computação ubíqua. De forma a permitir a modelagem arquitetural de aplicações ubíquas, esse trabalho tem como objetivo principal especificar UbiACME, uma linguagem de descrição arquitetural  para aplicações ubíquas, bem como disponibilizar a ferramenta UbiACME Studio, que permitirá arquitetos de software realizar modelagens usando UbiACME. Para esse fim, inicialmente realizamos uma revisão sistemática, de forma a investigar na literatura relacionada com sistemas ubíquos, os elementos comuns  a esses sistemas que devem ser considerados no projeto de UbiACME. Além disso, com base na revisão sistemática, definimos uma arquitetura de referência  para sistemas ubíquos, RA-Ubi, que é a base para a definição dos elementos necessários para a modelagem arquitetural e, portanto, fornece subsídios para a definição dos elementos de UbiACME. Por fim, de forma a validar a linguagem e a ferramenta, apresentamos um experimento controlado onde arquitetos modelam uma aplicação ubíqua usando UbiACME Studio e comparam com a modelagem da mesma aplicação em SySML. 
2
  • MARILIA ARANHA FREIRE
  • Formalização de Experimentos Controlados em Engenharia de Software

  • Orientador : UIRA KULESZA
  • MEMBROS DA BANCA :
  • DALTON DARIO SEREY GUERRERO
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • FERNANDO MARQUES FIGUEIRA FILHO
  • SÉRGIO CASTELO BRANCO SOARES
  • THAIS VASCONCELOS BATISTA
  • UIRA KULESZA
  • Data: 05/03/2015

  • Mostrar Resumo
  • A condução de estudos empíricos é de vital importância para coletar evidências científicas sobre novas tecnologias de software. Neste sentido, nos últimos anos centenas de experimentos controlados vêm sendo realizados na área da engenharia de software. Um experimento controlado é uma técnica que permite aos cientistas testarem uma hipótese de pesquisa e a relação causa e efeito entre as variáveis envolvidas no ambiente de estudo. Entretanto, o planejamento, execução, análise e empacotamento de um experimento controlado são considerados atividades complexas, custosas e propensas a erros. As poucas ferramentas existentes de apoio ao processo de experimentação auxiliam várias atividades envolvidas em um experimento mas possuem limitações e grande necessidade de melhorias.

    Neste contexto, este trabalho propõe : (i) investigar abordagens e ambientes existentes de apoio a formalização e condução de experimentos controlados em ES identificando suas limitações e benefícios; (ii) propor uma linguagem específica de domínio para a formalização de experimentos controlados; e (iii) desenvolver uma abordagem dirigida por modelos que usa a formalização de um experimento para geração de workflows customizáveis de apoio à condução de experimentos controlados.

    O trabalho é avaliado através da condução de: (i) um estudo de viabilidade da abordagem dirigida por modelos através da modelagem de um experimento existente e geração de workflows customizáveis a partir do seu projeto estatístico; (ii) um estudo empírico de análise da expressividade e completude da linguagem específica de domínio proposta através da modelagem de 16 experimentos; (iii) um experimento controlado que investiga à compreensão da linguagem pelos experimentadores; e (iv) um experimento controlado que investiga a usabilidade da linguagem através do seu uso direto na especificação de experimentos. Os resultados obtidos em tais estudos trazem evidências que a abordagem proposta é viável, e que a linguagem tem um bom nível de expressividade e completude. Além disso, as análises mostram que a compreensão do plano experimental escrito na linguagem proposta é mais fácil e mais rápida que quando analisando a especificação de um plano experimental descrito em artigos científicos. Por fim, a percepção dos experimentadores foi positiva em relação à utilização da linguagem.


  • Mostrar Abstract
  • A condução de estudos empíricos é de vital importância para coletar evidências científicas sobre novas tecnologias de software. Neste sentido, nos últimos anos centenas de experimentos controlados vêm sendo realizados na área da engenharia de software. Um experimento controlado é uma técnica que permite aos cientistas testarem uma hipótese de pesquisa e a relação causa e efeito entre as variáveis envolvidas no ambiente de estudo. Entretanto, o planejamento, execução, análise e empacotamento de um experimento controlado são considerados atividades complexas, custosas e propensas a erros. As poucas ferramentas existentes de apoio ao processo de experimentação auxiliam várias atividades envolvidas em um experimento mas possuem limitações e grande necessidade de melhorias.

    Neste contexto, este trabalho propõe : (i) investigar abordagens e ambientes existentes de apoio a formalização e condução de experimentos controlados em ES identificando suas limitações e benefícios; (ii) propor uma linguagem específica de domínio para a formalização de experimentos controlados; e (iii) desenvolver uma abordagem dirigida por modelos que usa a formalização de um experimento para geração de workflows customizáveis de apoio à condução de experimentos controlados.

    O trabalho é avaliado através da condução de: (i) um estudo de viabilidade da abordagem dirigida por modelos através da modelagem de um experimento existente e geração de workflows customizáveis a partir do seu projeto estatístico; (ii) um estudo empírico de análise da expressividade e completude da linguagem específica de domínio proposta através da modelagem de 16 experimentos; (iii) um experimento controlado que investiga à compreensão da linguagem pelos experimentadores; e (iv) um experimento controlado que investiga a usabilidade da linguagem através do seu uso direto na especificação de experimentos. Os resultados obtidos em tais estudos trazem evidências que a abordagem proposta é viável, e que a linguagem tem um bom nível de expressividade e completude. Além disso, as análises mostram que a compreensão do plano experimental escrito na linguagem proposta é mais fácil e mais rápida que quando analisando a especificação de um plano experimental descrito em artigos científicos. Por fim, a percepção dos experimentadores foi positiva em relação à utilização da linguagem.

3
  • THATIANA CUNHA NAVARRO DE SOUZA
  • Distribuição de Derivados de Petróleo por Redes de Polidutos: Uma Abordagem através de Algoritmos Evolucionários Híbridos para um Problema Triobjetivo

  • Orientador : ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MEMBROS DA BANCA :
  • ANTONIO CARLOS GAY THOME
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • HENRIQUE PACCA LOUREIRO LUNA
  • MARCO CESAR GOLDBARG
  • RICARDO LÜDERS
  • Data: 13/03/2015

  • Mostrar Resumo
  • Um importante problema enfrentado pela indústria petrolífera é distribuir vários produtos derivados de petróleo através de polidutos. Tal distribuição é feita através de uma rede composta por refinarias (nós fonte), parques de armazenagem (nós intermediários) e terminais (nós de demanda), interligados por um conjunto de polidutos que transportam petróleo e derivados entre áreas adjacentes. Restrições relativas a limites de armazenamento, tempo de entrega, disponibilidade das fontes, limites de envio e recebimento, entre outras, têm de ser satisfeitas. Alguns pesquisadores lidam com este problema sob o ponto de vista discreto onde o fluxo na rede é visto como o envio de bateladas. Geralmente, não existem dispositivos de separação entre bateladas de produtos diferentes e as perdas devidas à interface podem ser significativas. Minimizar o tempo de entrega é um objetivo usual dos engenheiros durante a programação do envio de produtos em redes de polidutos. No entanto, os custos devidos às perdas geradas nas interfaces não podem ser desconsiderados. O custo do envio dos produtos também depende das despesas de bombeamento as quais são, em grande parte, devidas ao custo da energia elétrica. Uma vez que a tarifa industrial de energia elétrica varia ao longo do dia, o bombeamento em diferentes períodos terão diferentes custos.  Este trabalho apresenta uma investigação experimental de métodos computacionais desenvolvidos para lidar com o problema do envio de bateladas de derivados de petróleo considerando a minimização simultânea de três funções objetivo: tempo de entrega, perdas devidas às interfaces e custo de energia elétrica. Tal problema é NP-árduo e será abordado através de algoritmos evolucionários híbridos. As hibridizações têm como foco principal os Algoritmos Transgenéticos e arquiteturas clássicas de algoritmos evolucionários multi-objetivo como MOEA/D, NSGA2 e SPEA2. Três arquiteturas denominadas MOTA/D, NSTA e SPETA, são aplicadas ao problema. É apresentado um estudo experimental dos algoritmos propostos onde é utilizado um conjunto de trinta casos teste. Para a análise dos algoritmos são empregados indicadores de qualidade Pareto concordantes e testes estatísticos não paramétricos.


  • Mostrar Abstract
  • Um importante problema enfrentado pela indústria petrolífera é distribuir vários produtos derivados de petróleo através de polidutos. Tal distribuição é feita através de uma rede composta por refinarias (nós fonte), parques de armazenagem (nós intermediários) e terminais (nós de demanda), interligados por um conjunto de polidutos que transportam petróleo e derivados entre áreas adjacentes. Restrições relativas a limites de armazenamento, tempo de entrega, disponibilidade das fontes, limites de envio e recebimento, entre outras, têm de ser satisfeitas. Alguns pesquisadores lidam com este problema sob o ponto de vista discreto onde o fluxo na rede é visto como o envio de bateladas. Geralmente, não existem dispositivos de separação entre bateladas de produtos diferentes e as perdas devidas à interface podem ser significativas. Minimizar o tempo de entrega é um objetivo usual dos engenheiros durante a programação do envio de produtos em redes de polidutos. No entanto, os custos devidos às perdas geradas nas interfaces não podem ser desconsiderados. O custo do envio dos produtos também depende das despesas de bombeamento as quais são, em grande parte, devidas ao custo da energia elétrica. Uma vez que a tarifa industrial de energia elétrica varia ao longo do dia, o bombeamento em diferentes períodos terão diferentes custos.  Este trabalho apresenta uma investigação experimental de métodos computacionais desenvolvidos para lidar com o problema do envio de bateladas de derivados de petróleo considerando a minimização simultânea de três funções objetivo: tempo de entrega, perdas devidas às interfaces e custo de energia elétrica. Tal problema é NP-árduo e será abordado através de algoritmos evolucionários híbridos. As hibridizações têm como foco principal os Algoritmos Transgenéticos e arquiteturas clássicas de algoritmos evolucionários multi-objetivo como MOEA/D, NSGA2 e SPEA2. Três arquiteturas denominadas MOTA/D, NSTA e SPETA, são aplicadas ao problema. É apresentado um estudo experimental dos algoritmos propostos onde é utilizado um conjunto de trinta casos teste. Para a análise dos algoritmos são empregados indicadores de qualidade Pareto concordantes e testes estatísticos não paramétricos.

4
  • TANIRO CHACON RODRIGUES
  • Uma Estratégia Baseada em Modelos para Desenvolvimento de Aplicações para Redes de Sensores e Atuadores Sem Fio

  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • THAIS VASCONCELOS BATISTA
  • FLAVIA COIMBRA DELICATO
  • NELIO ALESSANDRO AZEVEDO CACHO
  • JOSÉ NEUMAN DE SOUZA
  • PAULO DE FIGUEIREDO PIRES
  • Data: 30/03/2015

  • Mostrar Resumo
  • Redes de Sensores e Atuadores sem Fio (RSASF) são um dos principais componentes de Sistemas de Computação Ubíqua e possuem aplicações em diferentes domínios do conhecimento humano. Devido à complexidade de programar para este tipo de rede é necessário que especialistas de domínio conheçam especificidades das plataformas de sensores disponíveis, aumentando a curva de aprendizado para o desenvolvimento de aplicações. Neste trabalho, é proposta uma abordagem de Desenvolvimento Dirigido a Modelos, mais especificamente, baseada em Arquitetura Dirigida a Modelos (MDA, do inglês Model-Driven Architecture), para o desenvolvimento de aplicações para RSASF. A abordagem proposta visa facilitar a tarefa dos desenvolvedores, através de: (i) uma linguagem específica de domínio para RSASF; (ii) um processo para o desenvolvimento de aplicações para RSASF; e (iii) uma infraestrutura de software composta de artefatos MDA (PIM, PSM e transformações) para dar suporte a este processo. Esta abordagem permite a contribuição direta dos especialistas de domínio no desenvolvimento de aplicações de RSASF, sem a necessidade de conhecimento específico de programação em plataformas de RSASF e, ao mesmo tempo, permite que especialistas em redes foquem nas características específicas da sua área de especialidade sem a necessidade de conhecimento do domínio da aplicação. Além disso, a abordagem proposta tem como objetivo permitir que os desenvolvedores possam expressar e validar, em tempo de projeto, os requisitos funcionais e não funcionais da aplicação e promover o reuso dos artefatos de software desenvolvidos. Dessa forma, propõe-se nesse trabalho uma abordagem que compreende todas as etapas de desenvolvimento para RSASF para cenários atuais e emergentes através da infraestrutura MDA que promove reuso dos artefatos desenvolvidos, gera código para diversas plataformas e oferece recursos para avaliação de requisitos não funcionais em tempo de projeto. Por fim, foram realizadas avaliações preliminares através da: (i) execução de um experimento controlado que testou abordagem proposta em relação aos métodos tradicionais para o desenvolvimento de aplicações para RSASF,  (ii) análises comparativas entre a DSL utilizada e outras existentes na literatura e, (iii) uma prova de conceito que demonstra o processo de desenvolvimento de aplicações para RSASF utilizando as ferramentas de análise em tempo de projeto. 


  • Mostrar Abstract
  • Redes de Sensores e Atuadores sem Fio (RSASF) são um dos principais componentes de Sistemas de Computação Ubíqua e possuem aplicações em diferentes domínios do conhecimento humano. Devido à complexidade de programar para este tipo de rede é necessário que especialistas de domínio conheçam especificidades das plataformas de sensores disponíveis, aumentando a curva de aprendizado para o desenvolvimento de aplicações. Neste trabalho, é proposta uma abordagem de Desenvolvimento Dirigido a Modelos, mais especificamente, baseada em Arquitetura Dirigida a Modelos (MDA, do inglês Model-Driven Architecture), para o desenvolvimento de aplicações para RSASF. A abordagem proposta visa facilitar a tarefa dos desenvolvedores, através de: (i) uma linguagem específica de domínio para RSASF; (ii) um processo para o desenvolvimento de aplicações para RSASF; e (iii) uma infraestrutura de software composta de artefatos MDA (PIM, PSM e transformações) para dar suporte a este processo. Esta abordagem permite a contribuição direta dos especialistas de domínio no desenvolvimento de aplicações de RSASF, sem a necessidade de conhecimento específico de programação em plataformas de RSASF e, ao mesmo tempo, permite que especialistas em redes foquem nas características específicas da sua área de especialidade sem a necessidade de conhecimento do domínio da aplicação. Além disso, a abordagem proposta tem como objetivo permitir que os desenvolvedores possam expressar e validar, em tempo de projeto, os requisitos funcionais e não funcionais da aplicação e promover o reuso dos artefatos de software desenvolvidos. Dessa forma, propõe-se nesse trabalho uma abordagem que compreende todas as etapas de desenvolvimento para RSASF para cenários atuais e emergentes através da infraestrutura MDA que promove reuso dos artefatos desenvolvidos, gera código para diversas plataformas e oferece recursos para avaliação de requisitos não funcionais em tempo de projeto. Por fim, foram realizadas avaliações preliminares através da: (i) execução de um experimento controlado que testou abordagem proposta em relação aos métodos tradicionais para o desenvolvimento de aplicações para RSASF,  (ii) análises comparativas entre a DSL utilizada e outras existentes na literatura e, (iii) uma prova de conceito que demonstra o processo de desenvolvimento de aplicações para RSASF utilizando as ferramentas de análise em tempo de projeto. 

5
  • LILIANE RIBEIRO DA SILVA
  • Uma Plataforma Intervalar para Agrupamentos de Dados

  • Orientador : REGIVAN HUGO NUNES SANTIAGO
  • MEMBROS DA BANCA :
  • ANDRÉ CARLOS PONCE DE LEON FERREIRA DE CARVALHO
  • ANNE MAGALY DE PAULA CANUTO
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • FAGNER LEMOS DE SANTANA
  • FRANCISCO DE ASSIS TENORIO DE CARVALHO
  • REGIVAN HUGO NUNES SANTIAGO
  • Data: 17/04/2015

  • Mostrar Resumo
  • Este trabalho propõe uma plataforma  para  métodos de agrupamento
    de  dados do tipo intervalar e uma solução para dados híbridos que contenham esse tipo de dados.  
    O principal objetivo do uso de dados com natureza intervalar é  representar informação numérica dotada de imprecisões,  que são normalmente capturadas a 
    partir de medidas do mundo real. Para isso, é necessário adaptar  técnicas de valores reais para serem utilizadas em dados  intervalares.
    Para aplicações de agrupamento  intervalares, por exemplo,  é necessário propor uma distância intervalar e também adaptar algoritmos de agrupamento para serem utilizados nesse contexto.
     Neste caso, adaptamos uma distância intervalar, chamada $d_{km}$, e propomos  algoritmos de agrupamento fuzzy intervalares, Fuzzy C-Means baseado em intervalos e ckMeans baseado em intervalos, e três índices de validação intervalares.   Para validar a estrutura baseada em intervalos proposta, uma análise empírica foi realizada com conjuntos de dados sintéticos e reais. 
    A análise empírica é baseada em um índice de validade de cluster externo, Correct Rand, e seis índices de validação interna, sendo que três são necessárias adequações para serem utilizados com dados intervalares.
    É realizada uma análise comparativa entre os resultados  existentes na literatura e os resultados obtidos. E mais, para trabalhar com dados híbridos uma investigação sobre funções de agregações de i-distâncias é realizada. 


  • Mostrar Abstract
  • Este trabalho propõe uma plataforma  para  métodos de agrupamento
    de  dados do tipo intervalar e uma solução para dados híbridos que contenham esse tipo de dados.  
    O principal objetivo do uso de dados com natureza intervalar é  representar informação numérica dotada de imprecisões,  que são normalmente capturadas a 
    partir de medidas do mundo real. Para isso, é necessário adaptar  técnicas de valores reais para serem utilizadas em dados  intervalares.
    Para aplicações de agrupamento  intervalares, por exemplo,  é necessário propor uma distância intervalar e também adaptar algoritmos de agrupamento para serem utilizados nesse contexto.
     Neste caso, adaptamos uma distância intervalar, chamada $d_{km}$, e propomos  algoritmos de agrupamento fuzzy intervalares, Fuzzy C-Means baseado em intervalos e ckMeans baseado em intervalos, e três índices de validação intervalares.   Para validar a estrutura baseada em intervalos proposta, uma análise empírica foi realizada com conjuntos de dados sintéticos e reais. 
    A análise empírica é baseada em um índice de validade de cluster externo, Correct Rand, e seis índices de validação interna, sendo que três são necessárias adequações para serem utilizados com dados intervalares.
    É realizada uma análise comparativa entre os resultados  existentes na literatura e os resultados obtidos. E mais, para trabalhar com dados híbridos uma investigação sobre funções de agregações de i-distâncias é realizada. 

6
  • Felipe Alves Pereira Pinto
  • An Automated Approach for Performance Deviaton Analysis of Evolving Software Systems

  • Orientador : UIRA KULESZA
  • MEMBROS DA BANCA :
  • UIRA KULESZA
  • NELIO ALESSANDRO AZEVEDO CACHO
  • THAIS VASCONCELOS BATISTA
  • EDUARDO SANTANA DE ALMEIDA
  • MARCELO DE ALMEIDA MAIA
  • Data: 18/11/2015

  • Mostrar Resumo
  • The maintenance and evolution of software systems have become a critical task over the last years due to the diversity and high demand of features, devices and users. The ability to understand and analyze how newly introduced changes impact the quality attributes of the architecture of those software systems is an essential prerequisite for avoiding the deterioration of the engineering quality of them during their evolution. This thesis proposes an automated approach for the deviation analysis of the quality attribute of performance in terms of execution time (response time). It is implemented by a framework that adopts dynamic analysis and mining software repository techniques to provide an automated way to revel potential sources – commits and issues – of performance deviation in scenarios of an evolving software system. The approach defines four phases: (i) preparation – choosing the scenarios and preparing the target releases; (ii) dynamic analysis – determining the performance of scenarios and methods by calculating their execution time; (iii) deviation analysis – processing and comparing the results of the dynamic analysis for different releases; and (iv) repository mining – identifying development issues and commits associated with performance deviation. Several empirical studies have been developed to assess the approach from different perspectives. An initial study shows the feasibility of the approach to support traceability of quality attributes with static analysis. An exploratory study analyzed the usefulness and domain independence of the proposal in automatically identifying source code assets with performance deviation and the changes that have affected them during an evolution. This study was performed using three systems: (i) SIGAA – a web academic management system; (ii) ArgoUML – an UML modeling tool; and (iii) Netty – a network application framework. A third study has performed an evolutionary analysis of applying the approach to multiple releases of Netty, and the web frameworks Wicket and Jetty. It has analyzed twenty-one releases (seven releases of each system) and addressed a total of 57 scenarios. Overall, we have found 14 scenarios with significant performance deviation for Netty, 13 for Wicket, and 9 for Jetty. In addition, the feedback obtained from an online survey with eight developers of Netty, Wicket and Jetty is also discussed. Finally, in our last study, we built a performance regression model in order to indicate the properties of code changes that are more likely to cause performance degradation. We mined a total of 997 commits, of which 103 were retrieved from degraded code assets, 19 from optimized, while 875 had no impact on execution time. Number of days before release and day of week were the most relevant variables of commits that cause performance degradation in our model. The receiver operating characteristic (ROC) area of our regression model is 60%, which means that deciding if a commit will cause performance degradation or not by using the model is 10% better than a random guess.


  • Mostrar Abstract
  • The maintenance and evolution of software systems have become a critical task over the last years due to the diversity and high demand of features, devices and users. The ability to understand and analyze how newly introduced changes impact the quality attributes of the architecture of those software systems is an essential prerequisite for avoiding the deterioration of the engineering quality of them during their evolution. This thesis proposes an automated approach for the deviation analysis of the quality attribute of performance in terms of execution time (response time). It is implemented by a framework that adopts dynamic analysis and mining software repository techniques to provide an automated way to revel potential sources – commits and issues – of performance deviation in scenarios of an evolving software system. The approach defines four phases: (i) preparation – choosing the scenarios and preparing the target releases; (ii) dynamic analysis – determining the performance of scenarios and methods by calculating their execution time; (iii) deviation analysis – processing and comparing the results of the dynamic analysis for different releases; and (iv) repository mining – identifying development issues and commits associated with performance deviation. Several empirical studies have been developed to assess the approach from different perspectives. An initial study shows the feasibility of the approach to support traceability of quality attributes with static analysis. An exploratory study analyzed the usefulness and domain independence of the proposal in automatically identifying source code assets with performance deviation and the changes that have affected them during an evolution. This study was performed using three systems: (i) SIGAA – a web academic management system; (ii) ArgoUML – an UML modeling tool; and (iii) Netty – a network application framework. A third study has performed an evolutionary analysis of applying the approach to multiple releases of Netty, and the web frameworks Wicket and Jetty. It has analyzed twenty-one releases (seven releases of each system) and addressed a total of 57 scenarios. Overall, we have found 14 scenarios with significant performance deviation for Netty, 13 for Wicket, and 9 for Jetty. In addition, the feedback obtained from an online survey with eight developers of Netty, Wicket and Jetty is also discussed. Finally, in our last study, we built a performance regression model in order to indicate the properties of code changes that are more likely to cause performance degradation. We mined a total of 997 commits, of which 103 were retrieved from degraded code assets, 19 from optimized, while 875 had no impact on execution time. Number of days before release and day of week were the most relevant variables of commits that cause performance degradation in our model. The receiver operating characteristic (ROC) area of our regression model is 60%, which means that deciding if a commit will cause performance degradation or not by using the model is 10% better than a random guess.

7
  • ANDRÉ GUSTAVO DUARTE DE ALMEIDA
  • AdaptMCloud : Uma Estratégia para Adaptação Dinâmica de Aplicações Multi-Cloud

  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • CARLOS ANDRE GUIMARÃES FERRAZ
  • EDMUNDO ROBERTO MAURO MADEIRA
  • FRANCISCO DANTAS DE MEDEIROS NETO
  • NELIO ALESSANDRO AZEVEDO CACHO
  • THAIS VASCONCELOS BATISTA
  • UIRA KULESZA
  • Data: 25/11/2015

  • Mostrar Resumo
  • Aplicações Multi-Cloud são compostas de serviços oferecidos por múltiplas plataformas de nuvem, onde o usuário/desenvolvedor tem pleno conhecimento da utilização dessas plataformas. O uso de múltiplas plataformas de nuvem evita os seguintes problemas: (i) vendor lock-in, que consiste na dependência da aplicação de uma determinada plataforma de nuvem, o que é prejudicial no caso de degradação ou falha no serviços da plataforma, ou até mesmo aumento do preço do uso do serviço; (ii) degradação ou falha da aplicação devido a  flutuações da qualidade de serviço (QoS) provida por alguma plataforma de nuvem, ou mesmo devido a falha em algum serviço. No cenário multi-cloud é possível se trocar um serviço em falha ou com problemas de QoS por um equivalente de outra plataforma de nuvem. Para que uma aplicação consiga adotar a perspectiva multi-cloud é necessário criar mecanismos que sejam capazes de selecionar quais serviços de nuvem/plataformas devem ser usados, de acordo com os requisitos determinados pelo programador/usuário. Nesse contexto, as maiores dificuldades em termos de desenvolvimento de tais aplicações abrangem questões como: (i) a escolha de quais serviços e de plataformas de computação em nuvem subjacentes devem ser usadas com base nos requisitos definidos de funcionalidade e de qualidade pelo usuário, (ii) a necessidade de monitorar continuamente as informações dinâmicas (tais como tempo de resposta, disponibilidade, preço, disponibilidade), relacionadas com serviços de nuvem, além da variedade ampla de serviços, e (iii) a necessidade de se adaptar a aplicação no caso de violações de QoS que afetam os seus requisitos. Essa tese de doutorado propõe uma abordagem para adaptação dinâmica de aplicações multi-cloud que se aplica quando um serviço fica indisponível ou quando os requisitos definidos pelo usuário/desenvolvedor apontam que outra configuração multi-cloud disponível atende de forma mais eficiente. Dessa forma, esse trabalho propõe uma estratégia composta por duas fases. A primeira fase consiste na modelagem da aplicação, que explora a capacidade de representação de similaridades e variabilidades propostas no contexto do paradigma de linhas de produto de software (LPS). Nessa fase é usado um modelo de features estendido para especificar a configuração de serviços de nuvens a ser usado pela aplicação (similaridades) e os diferentes possíveis provedores para cada serviço (variabilidades). Além disso, os requisitos não-funcionais associados aos serviços de nuvem são especificados nesse modelo através de propriedades que descrevem informações dinâmicas sobre esses serviços.  A segunda fase consiste em um processo autonômico baseado no loop de controle MAPE-K, que é responsável por  selecionar, de forma otimizada, um configuração multi-cloud que atenda aos requisitos estabelecidos, e que execute a adaptação. A, estratégia de adaptação proposta é independente da técnica de programação usada realizar a adaptação. Nesse trabalho implementamos a estratégia de adaptação usando várias técnicas de programação como programação orientada a aspectos, programação orientada a contexto e programação orientada a componentes e serviços. Com base nas etapas propostas, procuramos avaliar os seguintes itens: (i) se o processo de modelagem e especificação de requisitos não-funcionais é capaz de garantir o efetivo acompanhamento da satisfação do usuário; (ii) se o processo otimizado de seleção apresenta ganhos significativos quando comparado com abordagem sequencial; e (iii) quais técnicas apresentam a melhor relação custo-benefício, quando comparado os esforços para desenvolvimento/modularidade e desempenho. 


  • Mostrar Abstract
  • Aplicações Multi-Cloud são compostas de serviços oferecidos por múltiplas plataformas de nuvem, onde o usuário/desenvolvedor tem pleno conhecimento da utilização dessas plataformas. O uso de múltiplas plataformas de nuvem evita os seguintes problemas: (i) vendor lock-in, que consiste na dependência da aplicação de uma determinada plataforma de nuvem, o que é prejudicial no caso de degradação ou falha no serviços da plataforma, ou até mesmo aumento do preço do uso do serviço; (ii) degradação ou falha da aplicação devido a  flutuações da qualidade de serviço (QoS) provida por alguma plataforma de nuvem, ou mesmo devido a falha em algum serviço. No cenário multi-cloud é possível se trocar um serviço em falha ou com problemas de QoS por um equivalente de outra plataforma de nuvem. Para que uma aplicação consiga adotar a perspectiva multi-cloud é necessário criar mecanismos que sejam capazes de selecionar quais serviços de nuvem/plataformas devem ser usados, de acordo com os requisitos determinados pelo programador/usuário. Nesse contexto, as maiores dificuldades em termos de desenvolvimento de tais aplicações abrangem questões como: (i) a escolha de quais serviços e de plataformas de computação em nuvem subjacentes devem ser usadas com base nos requisitos definidos de funcionalidade e de qualidade pelo usuário, (ii) a necessidade de monitorar continuamente as informações dinâmicas (tais como tempo de resposta, disponibilidade, preço, disponibilidade), relacionadas com serviços de nuvem, além da variedade ampla de serviços, e (iii) a necessidade de se adaptar a aplicação no caso de violações de QoS que afetam os seus requisitos. Essa tese de doutorado propõe uma abordagem para adaptação dinâmica de aplicações multi-cloud que se aplica quando um serviço fica indisponível ou quando os requisitos definidos pelo usuário/desenvolvedor apontam que outra configuração multi-cloud disponível atende de forma mais eficiente. Dessa forma, esse trabalho propõe uma estratégia composta por duas fases. A primeira fase consiste na modelagem da aplicação, que explora a capacidade de representação de similaridades e variabilidades propostas no contexto do paradigma de linhas de produto de software (LPS). Nessa fase é usado um modelo de features estendido para especificar a configuração de serviços de nuvens a ser usado pela aplicação (similaridades) e os diferentes possíveis provedores para cada serviço (variabilidades). Além disso, os requisitos não-funcionais associados aos serviços de nuvem são especificados nesse modelo através de propriedades que descrevem informações dinâmicas sobre esses serviços.  A segunda fase consiste em um processo autonômico baseado no loop de controle MAPE-K, que é responsável por  selecionar, de forma otimizada, um configuração multi-cloud que atenda aos requisitos estabelecidos, e que execute a adaptação. A, estratégia de adaptação proposta é independente da técnica de programação usada realizar a adaptação. Nesse trabalho implementamos a estratégia de adaptação usando várias técnicas de programação como programação orientada a aspectos, programação orientada a contexto e programação orientada a componentes e serviços. Com base nas etapas propostas, procuramos avaliar os seguintes itens: (i) se o processo de modelagem e especificação de requisitos não-funcionais é capaz de garantir o efetivo acompanhamento da satisfação do usuário; (ii) se o processo otimizado de seleção apresenta ganhos significativos quando comparado com abordagem sequencial; e (iii) quais técnicas apresentam a melhor relação custo-benefício, quando comparado os esforços para desenvolvimento/modularidade e desempenho. 

8
  • FLAULLES BOONE BERGAMASCHI
  • Primalidade Forte em Ambiente Fuzzy

  • Orientador : REGIVAN HUGO NUNES SANTIAGO
  • MEMBROS DA BANCA :
  • REGIVAN HUGO NUNES SANTIAGO
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • ELAINE GOUVEA PIMENTEL
  • EDWARD HERMANN
  • LAECIO CARVALHO DE BARROS
  • Data: 11/12/2015

  • Mostrar Resumo
  • O principal objetivo deste trabalho é propor a noção de primalidade forte e uniformemente forte no ambiente fuzzy. Assim, é apresentado um conceito de ideal uniformemente primo independente de alpha-cortes, mas de certa forma compatível. Também é investigada a primalidade forte nos quantales, propondo uma definição de ideal primo e uniformemente primo coerente com o ambiente não-comutativo que serve de base para a investigação em fuzzy. Como ferramenta adicional, este trabalho introduz o conceito de t/m sistemas para o ambiente fuzzy sugerindo um caminho alternativo para lidar com primalidade. Por fim, é desenvolvido uma versão fuzzy do teorema da correspondência e noções iniciais sobre o radical de um ideal fuzzy.


  • Mostrar Abstract
  • O principal objetivo deste trabalho é propor a noção de primalidade forte e uniformemente forte no ambiente fuzzy. Assim, é apresentado um conceito de ideal uniformemente primo independente de alpha-cortes, mas de certa forma compatível. Também é investigada a primalidade forte nos quantales, propondo uma definição de ideal primo e uniformemente primo coerente com o ambiente não-comutativo que serve de base para a investigação em fuzzy. Como ferramenta adicional, este trabalho introduz o conceito de t/m sistemas para o ambiente fuzzy sugerindo um caminho alternativo para lidar com primalidade. Por fim, é desenvolvido uma versão fuzzy do teorema da correspondência e noções iniciais sobre o radical de um ideal fuzzy.

2014
Dissertações
1
  • DENIS FELIPE
  • Algoritmos Científicos

  • Orientador : ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MEMBROS DA BANCA :
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MARCO CESAR GOLDBARG
  • MYRIAM REGATTIERI DE BIASE DA SILVA DELGADO
  • Data: 14/02/2014

  • Mostrar Resumo
  • As metaheurísticas são arquiteturas gerais que servem de base para o desenvolvimento de algoritmos heurísticos para resolver problemas. Neste trabalho, uma nova metaheurística é proposta, inspirada no processo da pesquisa científica. Para verificar o potencial da abordagem, são realizados experimentos computacionais utilizando o Problema do Caixeiro Alugador e o Problema da Árvore Geradora Biobjetivo. Os resultados são comparados ao estado da arte de cada um dos problemas. A eficiência dos algoritmos científicos é avaliada com relação ao padrão de qualidade das soluções encontradas e ao tempo computacional utilizado na busca. A importância dos resultados obtidos é verificada por testes estatísticos.


  • Mostrar Abstract
  • As metaheurísticas são arquiteturas gerais que servem de base para o desenvolvimento de algoritmos heurísticos para resolver problemas. Neste trabalho, uma nova metaheurística é proposta, inspirada no processo da pesquisa científica. Para verificar o potencial da abordagem, são realizados experimentos computacionais utilizando o Problema do Caixeiro Alugador e o Problema da Árvore Geradora Biobjetivo. Os resultados são comparados ao estado da arte de cada um dos problemas. A eficiência dos algoritmos científicos é avaliada com relação ao padrão de qualidade das soluções encontradas e ao tempo computacional utilizado na busca. A importância dos resultados obtidos é verificada por testes estatísticos.

2
  • FILLIPE MORAIS RODRIGUES
  • Uso de Confiabilidade na Rotulação de Exemplos em Problemas de Classificação Multirrótulo com Aprendizado Semissupervisionado

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • MEMBROS DA BANCA :
  • ANNE MAGALY DE PAULA CANUTO
  • ARAKEN DE MEDEIROS SANTOS
  • FLAVIA CRISTINA BERNARDINI
  • JOAO CARLOS XAVIER JUNIOR
  • Data: 21/02/2014

  • Mostrar Resumo
  • As técnicas de Aprendizado de máquina estudam tarefas de classificação para a aquisição de conhecimento através de um conjunto de dados ou informações. Alguns métodos de aprendizado utilizados pela literatura são os métodos baseados em aprendizado semissupervisionado; este é representado por pequenos percentuais de exemplos rotulados (aprendizado supervisionado) combinados com uma quantidade de exemplos não rotulados (não-supervisionado) durante a fase de treinamento. Grande parte dos métodos de aprendizado de máquina tratam de problemas unirrótulo, ou seja, problemas onde exemplos de um determinado conjunto são associados a uma única classe; entretanto, diante da necessidade existente de classificar dados em uma grande quantidade de domínios, ou em mais de uma classe, essa classificação citada denomína-se classificação multirrótulo. Dessa maneira, a utilização de técnicas de aprendizado semissupervisionado, bem como de métodos de classificação multirrótulos, foram imprescindíveis na apresentação dos resultados. Este trabalho apresenta uma análise experimental dos resultados obtidos por meio da utilização do aprendizado semissupervisionado em problemas de classificação multirrótulo usando parâmetro de confiabilidade como auxílio na classificação do dados.


  • Mostrar Abstract
  • As técnicas de Aprendizado de máquina estudam tarefas de classificação para a aquisição de conhecimento através de um conjunto de dados ou informações. Alguns métodos de aprendizado utilizados pela literatura são os métodos baseados em aprendizado semissupervisionado; este é representado por pequenos percentuais de exemplos rotulados (aprendizado supervisionado) combinados com uma quantidade de exemplos não rotulados (não-supervisionado) durante a fase de treinamento. Grande parte dos métodos de aprendizado de máquina tratam de problemas unirrótulo, ou seja, problemas onde exemplos de um determinado conjunto são associados a uma única classe; entretanto, diante da necessidade existente de classificar dados em uma grande quantidade de domínios, ou em mais de uma classe, essa classificação citada denomína-se classificação multirrótulo. Dessa maneira, a utilização de técnicas de aprendizado semissupervisionado, bem como de métodos de classificação multirrótulos, foram imprescindíveis na apresentação dos resultados. Este trabalho apresenta uma análise experimental dos resultados obtidos por meio da utilização do aprendizado semissupervisionado em problemas de classificação multirrótulo usando parâmetro de confiabilidade como auxílio na classificação do dados.

3
  • APARECIDA LOPES DE MEDEIROS LIMA
  • IMPLEMENTAÇÃO DA TÉCNICA DE SOFTWARE PIPELINING NA REDE EM CHIP IPNOSYS

  • Orientador : MARCIO EDUARDO KREUTZ
  • MEMBROS DA BANCA :
  • MARCIO EDUARDO KREUTZ
  • EDGARD DE FARIA CORREA
  • MONICA MAGALHAES PEREIRA
  • ALISSON VASCONCELOS DE BRITO
  • Data: 21/02/2014

  • Mostrar Resumo
  • Com os avanços do universo tecnológico os sistemas embarcados estão cada vez mais presentes em nosso cotidiano, por estes poderem colocar toda a capacidade computacional dentro de um circuito integrado, o que impulsionou o surgimento de arquiteturas de comunicação, como as redes em chip (Network-on-Chip - NoC), como alternativa de arquitetura de interconexão para sistemas em chip (System-on-Chip - SoC). As NoCs são estruturas que possuem roteadores com canais ponto-a-ponto que interconectam os cores do SoC, provendo comunicação. Existem diversas redes em chip na literatura, cada uma com suas características específicas. Dentre essas, para este trabalho foi a escolhida a rede IPNoSyS (Integrated Processing NoC System) por ser uma rede em chip com características diferenciadas em relação às NoCs em geral, pois seus componentes de roteamento acumulam também a função de processamento; seus roteadores são processantes, ou seja, eles possuem unidades funcionais capazes de executar instruções. Com esse novo modelo, pacotes são processados e roteados pela arquitetura do roteador. Este trabalho visa melhorar o desempenho das aplicações que possuem repetição, pois essas aplicações gastam um tempo maior na sua execução, o que se dá pela repetida execução de suas instruções. Assim, é proposta uma maneira de otimização do tempo de execução dessas estruturas, através do emprego de uma técnica de paralelismo a nível de instruções, visando melhor aproveitar os recursos disponíveis pela arquitetura. As aplicações são testada através de simulações e comparadas com a versão original da arquitetura, que provê paralelismo apenas em nível de pacotes.


  • Mostrar Abstract
  • Com os avanços do universo tecnológico os sistemas embarcados estão cada vez mais presentes em nosso cotidiano, por estes poderem colocar toda a capacidade computacional dentro de um circuito integrado, o que impulsionou o surgimento de arquiteturas de comunicação, como as redes em chip (Network-on-Chip - NoC), como alternativa de arquitetura de interconexão para sistemas em chip (System-on-Chip - SoC). As NoCs são estruturas que possuem roteadores com canais ponto-a-ponto que interconectam os cores do SoC, provendo comunicação. Existem diversas redes em chip na literatura, cada uma com suas características específicas. Dentre essas, para este trabalho foi a escolhida a rede IPNoSyS (Integrated Processing NoC System) por ser uma rede em chip com características diferenciadas em relação às NoCs em geral, pois seus componentes de roteamento acumulam também a função de processamento; seus roteadores são processantes, ou seja, eles possuem unidades funcionais capazes de executar instruções. Com esse novo modelo, pacotes são processados e roteados pela arquitetura do roteador. Este trabalho visa melhorar o desempenho das aplicações que possuem repetição, pois essas aplicações gastam um tempo maior na sua execução, o que se dá pela repetida execução de suas instruções. Assim, é proposta uma maneira de otimização do tempo de execução dessas estruturas, através do emprego de uma técnica de paralelismo a nível de instruções, visando melhor aproveitar os recursos disponíveis pela arquitetura. As aplicações são testada através de simulações e comparadas com a versão original da arquitetura, que provê paralelismo apenas em nível de pacotes.

4
  • RONILDO PINHEIRO DE ARAUJO MOURA
  • Algoritmos de Agrupamento Fuzzy Intervalares e Índices de Validação para Agrupamento de Dados Simbólicos do Tipo Intervalo.

  • Orientador : BENJAMIN RENE CALLEJAS BEDREGAL
  • MEMBROS DA BANCA :
  • ANNE MAGALY DE PAULA CANUTO
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • FRANCISCO DE ASSIS TENORIO DE CARVALHO
  • REGIVAN HUGO NUNES SANTIAGO
  • Data: 21/02/2014

  • Mostrar Resumo
  • A Análise de Dados Simbólicos (SDA) tem como objetivo prover mecanismos de redução de grandes bases de dados para extração do conhecimento e desenvolver métodos que descrevem variáveis do tipo complexas, intervalos ou distribuição de probabilidade. O objetivo desta proposta é estender métodos de agrupamento clássicos para dados sim- bólicos intervalares baseado em medidas de dissimilaridade essencialmente intervalar. A aplicação de distâncias essencialmente intervalar ainda está na fase de amadurecimento e esta trabalho almeja ajudar no amadurecimento dessa abordagem. Este trabalho engloba o paradigma fuzzy para realizar o agrupamento de dados. Os métodos propostos consideram três versões para uma extensão do Fuzzy c-Means e uma do ckMeans. Além disso, é proposto uma abordagem de adaptação para avaliação das partições geradas utilizando índices de validação para variáveis do tipo intervalar.


  • Mostrar Abstract
  • A Análise de Dados Simbólicos (SDA) tem como objetivo prover mecanismos de redução de grandes bases de dados para extração do conhecimento e desenvolver métodos que descrevem variáveis do tipo complexas, intervalos ou distribuição de probabilidade. O objetivo desta proposta é estender métodos de agrupamento clássicos para dados sim- bólicos intervalares baseado em medidas de dissimilaridade essencialmente intervalar. A aplicação de distâncias essencialmente intervalar ainda está na fase de amadurecimento e esta trabalho almeja ajudar no amadurecimento dessa abordagem. Este trabalho engloba o paradigma fuzzy para realizar o agrupamento de dados. Os métodos propostos consideram três versões para uma extensão do Fuzzy c-Means e uma do ckMeans. Além disso, é proposto uma abordagem de adaptação para avaliação das partições geradas utilizando índices de validação para variáveis do tipo intervalar.

5
  • HELOÍNA ALVES ARNALDO
  • Novos Métodos Determinísticos para Gerar  Centros Iniciais dos Grupos no Algoritmo Fuzzy C-Means e Variantes

  • Orientador : BENJAMIN RENE CALLEJAS BEDREGAL
  • MEMBROS DA BANCA :
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • ANNE MAGALY DE PAULA CANUTO
  • REGIVAN HUGO NUNES SANTIAGO
  • GRAÇALIZ PEREIRA DIMURO
  • Data: 24/02/2014

  • Mostrar Resumo
  • Agrupamento de dados é uma técnica aplicada a diversas áreas como mineração de dados,
    processamento de imagens e reconhecimento de padrões. O algoritmo Fuzzy C-Means
    (FCM) é um dos algoritmos de agrupamento fuzzy de dados mais utilizados e discutidos
    na literatura. O desempenho do FCM é fortemente afetado pela seleção dos centros
    iniciais dos grupos. Portanto, a escolha de um bom conjunto de centros iniciais é muito
    importante para o desempenho do algoritmo. No entanto, no FCM,  a escolha dos centroides iniciais é feita de forma
    aleatória, tornando difícil encontrar um bom conjunto. Este trabalho propõe dois novos
    métodos determinísticos para obter os centros iniciais dos grupos, de forma determinística, no algoritmo
    FCM, e que podem também ser usados em algumas variantes do FCM. Neste trabalho
    aplicamos esses métodos na variante ckMeans.Com os métodos propostos, pretendemos obter um conjunto
    de centroides iniciais que esteja próximo dos centroides reais do agrupamento. Com esta
    abordagem queremos reduzir o número de iterações para estes algoritmos convergirem e
    o tempo de processamento sem afetar a qualidade do agrupamento ou mesmo obter um
    melhor agrupamento. Neste sentido, usamos diversos índices de validação para medir a qualidade dos agrupamentos achados pelos algoritmos FCM e ckmeans, modificados com os métodos de inicialização propostos, quando aplicados a diversas bases de dados conhecidas.


  • Mostrar Abstract
  • Agrupamento de dados é uma técnica aplicada a diversas áreas como mineração de dados,
    processamento de imagens e reconhecimento de padrões. O algoritmo Fuzzy C-Means
    (FCM) é um dos algoritmos de agrupamento fuzzy de dados mais utilizados e discutidos
    na literatura. O desempenho do FCM é fortemente afetado pela seleção dos centros
    iniciais dos grupos. Portanto, a escolha de um bom conjunto de centros iniciais é muito
    importante para o desempenho do algoritmo. No entanto, no FCM,  a escolha dos centroides iniciais é feita de forma
    aleatória, tornando difícil encontrar um bom conjunto. Este trabalho propõe dois novos
    métodos determinísticos para obter os centros iniciais dos grupos, de forma determinística, no algoritmo
    FCM, e que podem também ser usados em algumas variantes do FCM. Neste trabalho
    aplicamos esses métodos na variante ckMeans.Com os métodos propostos, pretendemos obter um conjunto
    de centroides iniciais que esteja próximo dos centroides reais do agrupamento. Com esta
    abordagem queremos reduzir o número de iterações para estes algoritmos convergirem e
    o tempo de processamento sem afetar a qualidade do agrupamento ou mesmo obter um
    melhor agrupamento. Neste sentido, usamos diversos índices de validação para medir a qualidade dos agrupamentos achados pelos algoritmos FCM e ckmeans, modificados com os métodos de inicialização propostos, quando aplicados a diversas bases de dados conhecidas.

6
  • JUVANE NUNES MARCIANO
  • Aprendizagem da Língua Japonesa Apoiada por Ferramentas Computacionais: Estudo, Design e Desenvolvimento do Jogo Karuchā Ships Invaders

  • Orientador : LEONARDO CUNHA DE MIRANDA
  • MEMBROS DA BANCA :
  • LEONARDO CUNHA DE MIRANDA
  • ANDRE MAURICIO CUNHA CAMPOS
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • FÁBIO FERRENTINI SAMPAIO
  • Data: 24/02/2014

  • Mostrar Resumo
  • O uso de ferramentas tecnológicas para apoiar o processo de ensino-aprendizagem de diversas áreas do conhecimento é notório e vem crescendo a cada dia, inclusive, no contexto de aprendizado de idiomas. O estudo de Aprendizado de Idioma com Auxílio de Computador – Computer Assisted Language Learning (CALL) – realizado nesta pesquisa teve o intuito de avaliar as ferramentas existentes nesse contexto, focadas especificamente no idioma japonês e, a partir desse estudo, realizar o desenvolvimento de uma nova ferramenta que auxilie o ensino da língua japonesa. Como resultados, apresentamos um abrangente levantamento sobre o tema nas mais diversas tecnologias, bem como, descrevemos todos os passos do desenvolvimento do jogo Karuchā Ships Invaders, que se propõe a ensinar conceitos básicos do idioma, mesclando-se ao entretenimento, ainda com foco no público de estudantes brasileiros de japonês. Serão apresentadas as fases de concepção do jogo e sua evolução ao longo da pesquisa, bem como a avaliação de sua interface. Ainda, apresentamos um método para avaliar aspectos motivacionais de ferramentas computacionais com foco educacional e resultados de um experimento realizado com usuários em perspectiva.


  • Mostrar Abstract
  • O uso de ferramentas tecnológicas para apoiar o processo de ensino-aprendizagem de diversas áreas do conhecimento é notório e vem crescendo a cada dia, inclusive, no contexto de aprendizado de idiomas. O estudo de Aprendizado de Idioma com Auxílio de Computador – Computer Assisted Language Learning (CALL) – realizado nesta pesquisa teve o intuito de avaliar as ferramentas existentes nesse contexto, focadas especificamente no idioma japonês e, a partir desse estudo, realizar o desenvolvimento de uma nova ferramenta que auxilie o ensino da língua japonesa. Como resultados, apresentamos um abrangente levantamento sobre o tema nas mais diversas tecnologias, bem como, descrevemos todos os passos do desenvolvimento do jogo Karuchā Ships Invaders, que se propõe a ensinar conceitos básicos do idioma, mesclando-se ao entretenimento, ainda com foco no público de estudantes brasileiros de japonês. Serão apresentadas as fases de concepção do jogo e sua evolução ao longo da pesquisa, bem como a avaliação de sua interface. Ainda, apresentamos um método para avaliar aspectos motivacionais de ferramentas computacionais com foco educacional e resultados de um experimento realizado com usuários em perspectiva.

7
  • SARAH GOMES SAKAMOTO
  • Ambientes Residenciais Controlados por Dispositivos Móveis: Estudo, Concepção e Desenvolvimento de um Aplicativo Considerando a Diversidade

  • Orientador : LEONARDO CUNHA DE MIRANDA
  • MEMBROS DA BANCA :
  • LEONARDO CUNHA DE MIRANDA
  • LYRENE FERNANDES DA SILVA
  • VÂNIA PAULA DE ALMEIDA NERIS
  • Data: 25/02/2014

  • Mostrar Resumo
  • Com o desenvolvimento tecnológico ocorrido nas últimas décadas, o ambiente residencial vem incorporando a cada dia novos equipamentos eletro-eletrônicos de consumo doméstico a fim de facilitar as atividades do cotidiano e promover uma melhor qualidade de vida dos moradores-usuários. Controlar esse ambiente no mundo contemporâneo demanda interação com diferentes interfaces de controle, tornando essa tarefa, relativamente, complexa. Torna-se necessário, portanto, prover interfaces mais adequadas para controlar esses equipamentos. Os dispositivos móveis surgem como uma plataforma viável para realizar esse controle, trazendo comodidade, flexibilidade e diferentes mecanismos de interação com os equipamentos desse ambiente. Porém, ao se projetar novas soluções para esse contexto de uso é necessário considerar a diversidade de usuários e a riqueza de situações de uso desse ambiente. O estudo realizado nesta pesquisa visa compreender aspectos da interação desse contexto específico considerando a relação entre os usuários, a tecnologia e o ambiente. Como resultados, apresentamos um abrangente levantamento de aplicações, a identificação de desafios desse domínio sob a perspectiva da diversidade e o levantamento de requisitos para aplicações desse contexto. Ainda, serão apresentados os passos da concepção de um aplicativo que apóia o controle de recursos do ambiente residencial via dispositivo móvel juntamente com os resultados de um experimento realizado com potenciais usuários da solução computacional implementada.


  • Mostrar Abstract
  • Com o desenvolvimento tecnológico ocorrido nas últimas décadas, o ambiente residencial vem incorporando a cada dia novos equipamentos eletro-eletrônicos de consumo doméstico a fim de facilitar as atividades do cotidiano e promover uma melhor qualidade de vida dos moradores-usuários. Controlar esse ambiente no mundo contemporâneo demanda interação com diferentes interfaces de controle, tornando essa tarefa, relativamente, complexa. Torna-se necessário, portanto, prover interfaces mais adequadas para controlar esses equipamentos. Os dispositivos móveis surgem como uma plataforma viável para realizar esse controle, trazendo comodidade, flexibilidade e diferentes mecanismos de interação com os equipamentos desse ambiente. Porém, ao se projetar novas soluções para esse contexto de uso é necessário considerar a diversidade de usuários e a riqueza de situações de uso desse ambiente. O estudo realizado nesta pesquisa visa compreender aspectos da interação desse contexto específico considerando a relação entre os usuários, a tecnologia e o ambiente. Como resultados, apresentamos um abrangente levantamento de aplicações, a identificação de desafios desse domínio sob a perspectiva da diversidade e o levantamento de requisitos para aplicações desse contexto. Ainda, serão apresentados os passos da concepção de um aplicativo que apóia o controle de recursos do ambiente residencial via dispositivo móvel juntamente com os resultados de um experimento realizado com potenciais usuários da solução computacional implementada.

8
  • DANIEL SOARES BRANDAO
  • Avaliando o impacto da utilização de renderizações panorâmicas para a navegação em ambientes virtuais.

  • Orientador : SELAN RODRIGUES DOS SANTOS
  • MEMBROS DA BANCA :
  • SELAN RODRIGUES DOS SANTOS
  • ANDRE MAURICIO CUNHA CAMPOS
  • JAUVANE CAVALCANTE DE OLIVEIRA
  • Data: 25/02/2014

  • Mostrar Resumo
  • Renderização panorâmica é a visualização de objetos tridimensionais em um ambiente virtual através de um largo ângulo de visão. Este trabalho procurou investigar se a utilização de panoramas é capaz de agilizar buscas em um ambiente virtual. Panoramas permitem a apresentação do espaço através de uma menor necessidade de modificar a orientação da câmera, principalmente para o caso de projeções que englobam os 360° que cercam o usuário, o que pode beneficiar as buscas. Contudo, quanto maior o ângulo, mais a visualização do ambiente é distorcida, provocando certa confusão na navegação. A distorção é ainda maior quando o usuário modifica a inclinação da câmera, ou seja, ao olhar para cima ou para baixo. Neste trabalho foi desenvolvida uma técnica para eliminar especificamente as distorções provocadas pela mudança de inclinação, a qual foi denominada projeção hemisférica. Foram realizados experimentos buscando avaliar o desempenho na navegação de busca através das projeções em perspectiva, cilíndrica e hemisférica. Os resultados indicam que a navegação por projeção em perspectiva é superior a navegação por projeções panorâmicas, possivelmente devido a fatores como (i) pouca experiência dos participantes em compreender cenas exibidas de forma panorâmica, (ii) a inerente presença de distorção nas projeções panorâmicas e (iii) a menor resolução de visualização, pois os objetos são apresentados em tamanhos menores nas projeções panorâmicas, dificultando a percepção de detalhes. Contudo, a projeção hemisférica se demonstrou melhor do que a cilíndrica, indicando que a técnica desenvolvida proporciona benefícios para navegação em comparação com as técnicas de projeção panorâmica atuais. A projeção hemisférica também proporcionou a menor quantidade de modificações da orientação da câmera, o que é um indício de que as projeções hemisféricas podem ser particularmente úteis em situações onde existem restrições na facilidade de alterar a orientação. Pesquisas futuras investigarão o desempenho das câmeras sobre dispositivos de interações mais lentos, como o uso apenas de teclado, ou interfaces cérebro-máquina.


  • Mostrar Abstract
  • Renderização panorâmica é a visualização de objetos tridimensionais em um ambiente virtual através de um largo ângulo de visão. Este trabalho procurou investigar se a utilização de panoramas é capaz de agilizar buscas em um ambiente virtual. Panoramas permitem a apresentação do espaço através de uma menor necessidade de modificar a orientação da câmera, principalmente para o caso de projeções que englobam os 360° que cercam o usuário, o que pode beneficiar as buscas. Contudo, quanto maior o ângulo, mais a visualização do ambiente é distorcida, provocando certa confusão na navegação. A distorção é ainda maior quando o usuário modifica a inclinação da câmera, ou seja, ao olhar para cima ou para baixo. Neste trabalho foi desenvolvida uma técnica para eliminar especificamente as distorções provocadas pela mudança de inclinação, a qual foi denominada projeção hemisférica. Foram realizados experimentos buscando avaliar o desempenho na navegação de busca através das projeções em perspectiva, cilíndrica e hemisférica. Os resultados indicam que a navegação por projeção em perspectiva é superior a navegação por projeções panorâmicas, possivelmente devido a fatores como (i) pouca experiência dos participantes em compreender cenas exibidas de forma panorâmica, (ii) a inerente presença de distorção nas projeções panorâmicas e (iii) a menor resolução de visualização, pois os objetos são apresentados em tamanhos menores nas projeções panorâmicas, dificultando a percepção de detalhes. Contudo, a projeção hemisférica se demonstrou melhor do que a cilíndrica, indicando que a técnica desenvolvida proporciona benefícios para navegação em comparação com as técnicas de projeção panorâmica atuais. A projeção hemisférica também proporcionou a menor quantidade de modificações da orientação da câmera, o que é um indício de que as projeções hemisféricas podem ser particularmente úteis em situações onde existem restrições na facilidade de alterar a orientação. Pesquisas futuras investigarão o desempenho das câmeras sobre dispositivos de interações mais lentos, como o uso apenas de teclado, ou interfaces cérebro-máquina.

9
  • ROMEU FERREIRA DE OLIVEIRA
  • Um Método Semi-automatizado para Elicitação de Requisitos de Acessibilidade Web

  • Orientador : LYRENE FERNANDES DA SILVA
  • MEMBROS DA BANCA :
  • LYRENE FERNANDES DA SILVA
  • LEONARDO CUNHA DE MIRANDA
  • CARLA TACIANA LIMA LOURENCO SILVA SCHUENEMANN
  • Data: 26/02/2014

  • Mostrar Resumo
  • No contexto de engenharia de software, a acessibilidade web vem ganhando cada vez mais espaço, se firmando como um importante atributo de qualidade. Esse fato se deve a iniciativas de instituições como a W3C (World Wide Web Consortium) e ao surgimento de normas e leis que fundamentam a importância de elaborar sites e aplicações Web acessíveis. Considerar requisitos não-funcionais (RNFs) tal como a acessibilidade já durante as atividades de análise e especificação de requisitos se mostra uma estratégia para facilitar o andamento do projeto, evitando retrabalho em fases avançadas do desenvolvimento de software por causa de  possíveis erros, falhas ou omissão na elicitação. O objetivo desta proposta de dissertação é desenvolver um processo e uma ferramenta para apoiar a elicitação dos requisitos de acessibilidade web. A estratégia de elicitação presente neste processo é fundamentada em abordagens orientadas a metas e na utilização de catálogos de RNFs, criados com base nas diretrizes contidas no WCAG 2.0 (Web Content Accessibility Guideline) proposto pela W3C.


  • Mostrar Abstract
  • No contexto de engenharia de software, a acessibilidade web vem ganhando cada vez mais espaço, se firmando como um importante atributo de qualidade. Esse fato se deve a iniciativas de instituições como a W3C (World Wide Web Consortium) e ao surgimento de normas e leis que fundamentam a importância de elaborar sites e aplicações Web acessíveis. Considerar requisitos não-funcionais (RNFs) tal como a acessibilidade já durante as atividades de análise e especificação de requisitos se mostra uma estratégia para facilitar o andamento do projeto, evitando retrabalho em fases avançadas do desenvolvimento de software por causa de  possíveis erros, falhas ou omissão na elicitação. O objetivo desta proposta de dissertação é desenvolver um processo e uma ferramenta para apoiar a elicitação dos requisitos de acessibilidade web. A estratégia de elicitação presente neste processo é fundamentada em abordagens orientadas a metas e na utilização de catálogos de RNFs, criados com base nas diretrizes contidas no WCAG 2.0 (Web Content Accessibility Guideline) proposto pela W3C.

10
  • EVERTON FAGNER COSTA DE ALMEIDA
  •  Infoestrutura: Um Sistema em Nuvem para Prover Contexto como Serviço no Cenário de Internet das Coisas Integrado a Ambientes Veiculares.

  • Orientador : AUGUSTO JOSE VENANCIO NETO
  • MEMBROS DA BANCA :
  • AUGUSTO JOSE VENANCIO NETO
  • NELIO ALESSANDRO AZEVEDO CACHO
  • ANDRE LUIZ LINS DE AQUINO
  • Data: 27/02/2014

  • Mostrar Resumo
  • As redes de computadores estão por toda a parte e o advento do IPv6 abre caminho para a explosão da Internet das Coisas. Esse conceito maximiza o compartilhamento de dados entre máquinas computacionais e objetos do dia a dia. Uma das áreas inseridas no âmbito de internet das coisas são as redes veiculares. No entanto, as informações geradas individualmente pelos veículos não contribuem para uma melhoria no trânsito, uma vez que se tem as informações isoladas. Este artigo apresenta a Infoestrutrura, um sistema que vem para facilitar os esforços e custos para desenvolvimento de aplicações sensíveis ao contexto para o cenário de Internet das coisas, que permite gerenciar, armazenar e combinar os dados a fim de gerar contexto consonante indicações e preferências de aplicações veiculares.


  • Mostrar Abstract
  • As redes de computadores estão por toda a parte e o advento do IPv6 abre caminho para a explosão da Internet das Coisas. Esse conceito maximiza o compartilhamento de dados entre máquinas computacionais e objetos do dia a dia. Uma das áreas inseridas no âmbito de internet das coisas são as redes veiculares. No entanto, as informações geradas individualmente pelos veículos não contribuem para uma melhoria no trânsito, uma vez que se tem as informações isoladas. Este artigo apresenta a Infoestrutrura, um sistema que vem para facilitar os esforços e custos para desenvolvimento de aplicações sensíveis ao contexto para o cenário de Internet das coisas, que permite gerenciar, armazenar e combinar os dados a fim de gerar contexto consonante indicações e preferências de aplicações veiculares.

11
  • JOSE SUENEY DE LIMA
  • Detecção e Recuperação de Falhas para a Máquina de Redução de Grafos PEWS-AM

  • Orientador : UMBERTO SOUZA DA COSTA
  • MEMBROS DA BANCA :
  • MARTIN ALEJANDRO MUSICANTE
  • REGINA MARIA MOTZ CARRANO
  • UMBERTO SOUZA DA COSTA
  • Data: 28/02/2014

  • Mostrar Resumo
  • Serviços Web são unidades de software que permitem o acesso a um ou mais recursos, dando suporte à implantação de processos de negócios na Web. Eles permitem a interação através de interfaces bem-definidas, utilizando-se de protocolos padrões da Web, tornando possível a comunicação entre entidades implementadas em diferentes tipos de plataformas. Em virtude dessas características, Serviços Web podem ser integrados com o objetivo de formar aplicações mais robustas, com baixo acoplamento entre serviços, através de composições. Serviços Web estão sujeitos a falhas, situações indesejadas que podem comprometer o processo de negócio parcialmente ou mesmo totalmente. Falhas podem ocorrer tanto na concepção de composições quanto na execução das mesmas. Em virtude disso, é essencial a criação de mecanismos que tornem a execução das composições de serviços mais robusta e tratem falhas. Especificamente, propomos o suporte ao tratamento de falhas em composições de serviços descritas na linguagem PEWS e executadas sobre PEWS-AM, uma implementação criada a partir da noção de grafos. Para suportar o tratamento de falhas em PEWS-AM, estendemos as especificações PEWS e adaptamos as regras de tradução e redução de grafos desta máquina. Estas contribuições foram realizadas tanto no modelo da máquina abstrata quanto no nível da implementação.


  • Mostrar Abstract
  • Serviços Web são unidades de software que permitem o acesso a um ou mais recursos, dando suporte à implantação de processos de negócios na Web. Eles permitem a interação através de interfaces bem-definidas, utilizando-se de protocolos padrões da Web, tornando possível a comunicação entre entidades implementadas em diferentes tipos de plataformas. Em virtude dessas características, Serviços Web podem ser integrados com o objetivo de formar aplicações mais robustas, com baixo acoplamento entre serviços, através de composições. Serviços Web estão sujeitos a falhas, situações indesejadas que podem comprometer o processo de negócio parcialmente ou mesmo totalmente. Falhas podem ocorrer tanto na concepção de composições quanto na execução das mesmas. Em virtude disso, é essencial a criação de mecanismos que tornem a execução das composições de serviços mais robusta e tratem falhas. Especificamente, propomos o suporte ao tratamento de falhas em composições de serviços descritas na linguagem PEWS e executadas sobre PEWS-AM, uma implementação criada a partir da noção de grafos. Para suportar o tratamento de falhas em PEWS-AM, estendemos as especificações PEWS e adaptamos as regras de tradução e redução de grafos desta máquina. Estas contribuições foram realizadas tanto no modelo da máquina abstrata quanto no nível da implementação.

12
  • ELDER GONÇALVES PEREIRA
  •  O Problema do Hiker Dice em Tabuleiro Compacto: Um Estudo Algoritmico

  • Orientador : MARCO CESAR GOLDBARG
  • MEMBROS DA BANCA :
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • HENRIQUE PACCA LOUREIRO LUNA
  • ILONEIDE CARLOS DE OLIVEIRA RAMOS
  • MARCO CESAR GOLDBARG
  • MYRIAM REGATTIERI DE BIASE DA SILVA DELGADO
  • Data: 21/03/2014

  • Mostrar Resumo
  • O presente trabalho apresenta algoritmos que buscam as melhores soluções nos tabuleiros de ordem n e sem buracos (tabuleiro compacto) no problema Hiker Dice. Na Ciência da Computação é crescente o interesse em jogos lógicos como o Hiker Dice, devido à dificuldade de solução que esses jogos demandam, bem como suas aplicações em modelos para problemas do mundo real. A pesquisa presentemente relatada, modela o problema através de Grafos, e propõe duas classes de algoritmos de solução. A primeira classe, pertencente aos algoritmos exatos, é constituída por um algoritmo em backtracking aparelhado com um retorno realizado através de regras lógicas e limite da melhor solução encontrada. A segunda classe de algoritmos é constituída por metaheurísticas do tipo Computação Evolucionária, Busca Local Aleatorizada e GRASP (Greed Randomized Adaptative Search). Para os algoritmos metaheurísticos foram criados três operadores específicos da seguinte forma: de reestruturação, de recombinação com duas soluções e construtivo guloso aleatório. O algoritmo exato foi testado em tabuleiros de ordem 4 a 7 esgotando a possibilidade de tratamento computacional dos casos maiores em virtude da explosão em tempo de processamento. As metaheurísticas foram testadas nos tabuleiros 8x8 até 9x9. O processo de afinamento das metaheurísticas envolveu a consideração de até três diferentes parâmetros, adotando-se a configuração de melhor desempenho no tabuleiro 7x7 através do teste estatístico não-paramétrico (U de Mann-Whitney). Nesse processo de avaliação dos parâmetros foram utilizados os resultados obtidos nos algoritmos exatos. Os algoritmos afinados foram então aplicados na solução dos tabuleiros 8 e 9 e comparados pelo mesmo teste estatístico não-paramétrico. A comparação dos algoritmos sugere um melhor potencial de desempenho para o algoritmo de busca local aleatorizada. Ao final do documento é proposta a conclusão da pesquisa com a ampliação dos casos teste e o aperfeiçoamento dos algoritmos propostos.


  • Mostrar Abstract
  • O presente trabalho apresenta algoritmos que buscam as melhores soluções nos tabuleiros de ordem n e sem buracos (tabuleiro compacto) no problema Hiker Dice. Na Ciência da Computação é crescente o interesse em jogos lógicos como o Hiker Dice, devido à dificuldade de solução que esses jogos demandam, bem como suas aplicações em modelos para problemas do mundo real. A pesquisa presentemente relatada, modela o problema através de Grafos, e propõe duas classes de algoritmos de solução. A primeira classe, pertencente aos algoritmos exatos, é constituída por um algoritmo em backtracking aparelhado com um retorno realizado através de regras lógicas e limite da melhor solução encontrada. A segunda classe de algoritmos é constituída por metaheurísticas do tipo Computação Evolucionária, Busca Local Aleatorizada e GRASP (Greed Randomized Adaptative Search). Para os algoritmos metaheurísticos foram criados três operadores específicos da seguinte forma: de reestruturação, de recombinação com duas soluções e construtivo guloso aleatório. O algoritmo exato foi testado em tabuleiros de ordem 4 a 7 esgotando a possibilidade de tratamento computacional dos casos maiores em virtude da explosão em tempo de processamento. As metaheurísticas foram testadas nos tabuleiros 8x8 até 9x9. O processo de afinamento das metaheurísticas envolveu a consideração de até três diferentes parâmetros, adotando-se a configuração de melhor desempenho no tabuleiro 7x7 através do teste estatístico não-paramétrico (U de Mann-Whitney). Nesse processo de avaliação dos parâmetros foram utilizados os resultados obtidos nos algoritmos exatos. Os algoritmos afinados foram então aplicados na solução dos tabuleiros 8 e 9 e comparados pelo mesmo teste estatístico não-paramétrico. A comparação dos algoritmos sugere um melhor potencial de desempenho para o algoritmo de busca local aleatorizada. Ao final do documento é proposta a conclusão da pesquisa com a ampliação dos casos teste e o aperfeiçoamento dos algoritmos propostos.

13
  • ANA CARLA DE CARVALHO CORREIA
  • Interação Gestual em Ambiente Residencial: Estudo, Concepção e Desenvolvimento

  • Orientador : LEONARDO CUNHA DE MIRANDA
  • MEMBROS DA BANCA :
  • JAIR CAVALCANTI LEITE
  • LEONARDO CUNHA DE MIRANDA
  • MARIA CECILIA CALANI BARANAUSKAS
  • Data: 24/03/2014

  • Mostrar Resumo
  • O controle e automação de ambientes residenciais – domótica – é uma área emergente de aplicação da computação. O desenvolvimento de sistemas computacionais para domótica é complexo, devido à diversidade de potenciais usuários e por imergir em um contexto de uso de relações emocionais e de construção familiar. Atualmente, o foco do desenvolvimento desse tipo de sistema está direcionado, sobretudo, aos aspectos tecnológicos e físicos. Em virtude deste fato, a interação gestual nesta pesquisa é investigada sob a ótica da área de Interação Humano-Computador (IHC). Inicialmente, abordamos a temática através da construção de um framework conceitual para discussão de desafios da área, de forma integrada as dimensões: pessoas, modo de interação e domótica. Uma análise mais aprofundada do domínio é realizada empregando o referencial teórico-metodológico da Semiótica Organizacional. Posteriormente, são definidas recomendações para a diversidade que embasam/inspiram o design inclusivo, norteado pelas habilidades físicas, perceptivas e cognitivas, que visam melhor representar a diversidade em questão. Embora os desenvolvedores tenham o apoio de tecnologias de reconhecimento gestual que auxiliam o desenvolvimento “mais rápido”, esses profissionais enfrentam outra dificuldade em não restringir os comandos gestuais da aplicação aos gestos padrões fornecidos por frameworks de desenvolvimento. Portanto, uma abstração da interação gestual foi idealizada por meio de uma formalização, descrita de forma sintática através de blocos de construção que origina uma gramática da interação gestual e, de forma semântica, abordada sob o ponto de vista do sistema residencial. Assim, definimos um conjunto de métricas fundamentadas nas recomendações que são descritas com informações oriundas da gramática preestabelecida e, ainda, concebemos e implementamos em Java, sob o alicerce dessa gramática, um sistema residencial baseada em interação gestual para uso com o Microsoft Kinect. Por fim, realizamos experimento com potenciais usuários finais do sistema com o intuito de melhor analisar os resultados da pesquisa.


  • Mostrar Abstract
  • O controle e automação de ambientes residenciais – domótica – é uma área emergente de aplicação da computação. O desenvolvimento de sistemas computacionais para domótica é complexo, devido à diversidade de potenciais usuários e por imergir em um contexto de uso de relações emocionais e de construção familiar. Atualmente, o foco do desenvolvimento desse tipo de sistema está direcionado, sobretudo, aos aspectos tecnológicos e físicos. Em virtude deste fato, a interação gestual nesta pesquisa é investigada sob a ótica da área de Interação Humano-Computador (IHC). Inicialmente, abordamos a temática através da construção de um framework conceitual para discussão de desafios da área, de forma integrada as dimensões: pessoas, modo de interação e domótica. Uma análise mais aprofundada do domínio é realizada empregando o referencial teórico-metodológico da Semiótica Organizacional. Posteriormente, são definidas recomendações para a diversidade que embasam/inspiram o design inclusivo, norteado pelas habilidades físicas, perceptivas e cognitivas, que visam melhor representar a diversidade em questão. Embora os desenvolvedores tenham o apoio de tecnologias de reconhecimento gestual que auxiliam o desenvolvimento “mais rápido”, esses profissionais enfrentam outra dificuldade em não restringir os comandos gestuais da aplicação aos gestos padrões fornecidos por frameworks de desenvolvimento. Portanto, uma abstração da interação gestual foi idealizada por meio de uma formalização, descrita de forma sintática através de blocos de construção que origina uma gramática da interação gestual e, de forma semântica, abordada sob o ponto de vista do sistema residencial. Assim, definimos um conjunto de métricas fundamentadas nas recomendações que são descritas com informações oriundas da gramática preestabelecida e, ainda, concebemos e implementamos em Java, sob o alicerce dessa gramática, um sistema residencial baseada em interação gestual para uso com o Microsoft Kinect. Por fim, realizamos experimento com potenciais usuários finais do sistema com o intuito de melhor analisar os resultados da pesquisa.

14
  • ALESSANDRO LUIZ STAMATTO FERREIRA
  • Interfaces Cérebro-Computador: Estudo, Design e Desenvolvimento do Jogo AdmiralMind Battleship

  • Orientador : LEONARDO CUNHA DE MIRANDA
  • MEMBROS DA BANCA :
  • JAIR CAVALCANTI LEITE
  • JOSÉ ANTÔNIO DOS SANTOS BORGES
  • LEONARDO CUNHA DE MIRANDA
  • MARCOS CESAR MADRUGA ALVES PINHEIRO
  • Data: 28/03/2014

  • Mostrar Resumo
  • Interface Cérebro-Computador (ICC) é uma área que vêm sendo estudada há décadas, mas apenas nos últimos anos atingiu um nível de maturidade suficiente para permitir o seu uso com jogos digitais. Considerando que no futuro as ICCs farão parte de sistemas interativos, é preciso estudar o seu uso, avaliar quais são seus desafios e limitações e, também, entender de forma mais apurada como adaptá-la para uso conjugado com outras formas usuais de interação humano-computador. Nesta pesquisa, investigamos apenas as ICCs não-invasivas por entendermos que esse tipo de ICC poderá ser, de fato, utilizada por usuários finais nesse “novo” paradigma de interação. Um dos grandes potenciais de uso de ICCs é no domínio de jogos digitais, onde podem aumentar a imersão e a diversão através de um controle via ondas cerebrais. Apesar disso, nos dias atuais, ainda existem grandes dificuldades no processo de design e desenvolvimento de jogos dessa natureza. Como resultados da pesquisa destacamos o extenso levantamento da área, a identificação de desafios de interação relacionados a ICCs, a identificação dos stakeholders através do referencial teórico-metodológico da Semiótica Organizacional, a confecção de um design-rationale para apoiar o processo de design de jogos dessa natureza e, ainda, o design e a implementação em C++ de um jogo de batalha naval via uma ICC híbrida baseada em movimento imaginado para uso com o headset EEG Emotic EPOC.


  • Mostrar Abstract
  • Interface Cérebro-Computador (ICC) é uma área que vêm sendo estudada há décadas, mas apenas nos últimos anos atingiu um nível de maturidade suficiente para permitir o seu uso com jogos digitais. Considerando que no futuro as ICCs farão parte de sistemas interativos, é preciso estudar o seu uso, avaliar quais são seus desafios e limitações e, também, entender de forma mais apurada como adaptá-la para uso conjugado com outras formas usuais de interação humano-computador. Nesta pesquisa, investigamos apenas as ICCs não-invasivas por entendermos que esse tipo de ICC poderá ser, de fato, utilizada por usuários finais nesse “novo” paradigma de interação. Um dos grandes potenciais de uso de ICCs é no domínio de jogos digitais, onde podem aumentar a imersão e a diversão através de um controle via ondas cerebrais. Apesar disso, nos dias atuais, ainda existem grandes dificuldades no processo de design e desenvolvimento de jogos dessa natureza. Como resultados da pesquisa destacamos o extenso levantamento da área, a identificação de desafios de interação relacionados a ICCs, a identificação dos stakeholders através do referencial teórico-metodológico da Semiótica Organizacional, a confecção de um design-rationale para apoiar o processo de design de jogos dessa natureza e, ainda, o design e a implementação em C++ de um jogo de batalha naval via uma ICC híbrida baseada em movimento imaginado para uso com o headset EEG Emotic EPOC.

15
  • DHIEGO FERNANDES CARVALHO
  • AIGA: UM AMBIENTE INTEGRADO DE GERÊNCIA PARA REDES EM MALHA SEM FIO IEEE 802.11s

  • Orientador : MARCOS CESAR MADRUGA ALVES PINHEIRO
  • MEMBROS DA BANCA :
  • MARCOS CESAR MADRUGA ALVES PINHEIRO
  • AUGUSTO JOSE VENANCIO NETO
  • ROMMEL WLADIMIR DE LIMA
  • Data: 31/03/2014

  • Mostrar Resumo
  • As redes em malha sem fio baseadas no 802.11 (Padrão 802.11s) tem se constituído em um ambiente adequado a ser utilizado em diferentes cenários devido a sua capacidade de autoadaptação. Porém, por ser um padrão recente (2012) diversas pesquisas tem sido feitas no sentido de melhorar o desempenho dessas redes, principalmente no que diz respeito aos protocolos de encaminhamento de quadros que podem ser utilizados. As redes criadas em ambientes controlados (testbeds) são um ótimo recurso para auxiliar nessa tarefa. Entretanto a complexidade para configurar diversos cenários de rede no testbed e coletar as informações peritnentes para análise dificultam muito essa tarefa. Neste trabalho é proposto um ambiente integrado para configuração de testbeds incluindo geração de tráfego e coleta de dados que visa facilitar a realização de experimentos com um variado número de cenários.


  • Mostrar Abstract
  • As redes em malha sem fio baseadas no 802.11 (Padrão 802.11s) tem se constituído em um ambiente adequado a ser utilizado em diferentes cenários devido a sua capacidade de autoadaptação. Porém, por ser um padrão recente (2012) diversas pesquisas tem sido feitas no sentido de melhorar o desempenho dessas redes, principalmente no que diz respeito aos protocolos de encaminhamento de quadros que podem ser utilizados. As redes criadas em ambientes controlados (testbeds) são um ótimo recurso para auxiliar nessa tarefa. Entretanto a complexidade para configurar diversos cenários de rede no testbed e coletar as informações peritnentes para análise dificultam muito essa tarefa. Neste trabalho é proposto um ambiente integrado para configuração de testbeds incluindo geração de tráfego e coleta de dados que visa facilitar a realização de experimentos com um variado número de cenários.

16
  • ELIEZIO SOARES DE SOUSA NETO
  • Avaliando a Robustez e Manutenibilidade do Comportamento Excepcional em Aplicações C#


  • Orientador : NELIO ALESSANDRO AZEVEDO CACHO
  • MEMBROS DA BANCA :
  • FERNANDO JOSÉ CASTOR DE LIMA FILHO
  • NELIO ALESSANDRO AZEVEDO CACHO
  • UMBERTO SOUZA DA COSTA
  • Data: 25/04/2014

  • Mostrar Resumo
  • As linguagens de programação convencionais fornecem mecanismos de tratamento de exceções internos a fim de prover implementação de exceções robustas e manuteníveis em sistemas de software. A maioria dessas linguagens modernas, tais como C#, Ruby, Python e muitas outras, frequentemente afirmam ter mecanismos de tratamento de exceção mais apropriados. Elas reduzem as restrições de programação no tratamento de exceção buscando agilizar mudanças no código fonte. Essas linguagens suportam o que chamamos de mecanismos de tratamento de exceções dirigidos a manutenção. Espera-se que a adoção desses mecanismos aumentem a manutenibilidade dos softwares sem impactar na robustez. Entretanto existe pouco conhecimento acerca do impacto que a adoção desses mecanismos tem na robustez de sistemas de software. Este trabalho busca preencher essa lacuna conduzindo um estudo experimental direcionado ao entendimento da relação entre mudanças em programas C# e sua robustez. Em particular, foi avaliado como mudanças nos códigos normal e excepcional se relacionam com faltas no tratamento de exceção. Foi aplicado uma análise de impacto de mudança e uma análise de fluxo de controle em 119 versões de 16 programas escritos em C#. A partir dos dados coletados, este trabalho identificou os elementos do trade-off entre  manutenibilidade e robustez.


  • Mostrar Abstract
  • As linguagens de programação convencionais fornecem mecanismos de tratamento de exceções internos a fim de prover implementação de exceções robustas e manuteníveis em sistemas de software. A maioria dessas linguagens modernas, tais como C#, Ruby, Python e muitas outras, frequentemente afirmam ter mecanismos de tratamento de exceção mais apropriados. Elas reduzem as restrições de programação no tratamento de exceção buscando agilizar mudanças no código fonte. Essas linguagens suportam o que chamamos de mecanismos de tratamento de exceções dirigidos a manutenção. Espera-se que a adoção desses mecanismos aumentem a manutenibilidade dos softwares sem impactar na robustez. Entretanto existe pouco conhecimento acerca do impacto que a adoção desses mecanismos tem na robustez de sistemas de software. Este trabalho busca preencher essa lacuna conduzindo um estudo experimental direcionado ao entendimento da relação entre mudanças em programas C# e sua robustez. Em particular, foi avaliado como mudanças nos códigos normal e excepcional se relacionam com faltas no tratamento de exceção. Foi aplicado uma análise de impacto de mudança e uma análise de fluxo de controle em 119 versões de 16 programas escritos em C#. A partir dos dados coletados, este trabalho identificou os elementos do trade-off entre  manutenibilidade e robustez.

17
  • JOÃO MARIA GUEDES DA CRUZ JUNIOR
  • Uma Ferramenta de Análise Automatizada de Técnicas de Seleção de Testes de Regressão Baseada em Mineração de Repositórios de Software

  • Orientador : UIRA KULESZA
  • MEMBROS DA BANCA :
  • LYRENE FERNANDES DA SILVA
  • ROBERTA DE SOUZA COELHO
  • UIRA KULESZA
  • EDUARDO MARTINS GUERRA
  • Data: 29/04/2014

  • Mostrar Resumo
  • O objetivo dos testes de regressão (RT) é reutilizar o conjunto de testes da última versão de um sistema de software na sua versão atual, de forma a maximizar o valor dos testes já desenvolvidos e garantir que antigas funcionalidades continuem funcionando corretamente, mesmo após as novas modificações. Mesmo com o reuso, geralmente nem todos os testes precisam ser re-executados, estimulando o uso de técnicas de seleção dos testes de regressão. Tais técnicas tentam selecionar dentre todos os testes, apenas aqueles que realmente precisam ser re-executados, isto reduz os custos, tornando a prática realmente atrativa para as equipes de desenvolvimento. Diversos estudos recentes buscam avaliar o desempenho de técnicas de seleção de testes de regressão, com o intuito de identificar qual delas se comporta melhor, através do uso de métricas como inclusão e precisão.

    Neste contexto, esta dissertação de mestrado propõe uma ferramenta implementada na linguagem Java para análise automatizada de técnicas de seleção de testes de regressão através da mineração do repositórios de software. A ferramenta é avaliada através da condução de um estudo empírico de análise da técnica de seleção baseada em diferenciação textual em um sistema de informação web de larga escala. O objetivo do estudo é avaliar os benefícios do uso da ferramenta na avaliação de técnicas de seleção de testes de regressão, e identificar o desempenho da técnica de diferenciação textual comparado com a seleção completa de todos os testes.


  • Mostrar Abstract
  • O objetivo dos testes de regressão (RT) é reutilizar o conjunto de testes da última versão de um sistema de software na sua versão atual, de forma a maximizar o valor dos testes já desenvolvidos e garantir que antigas funcionalidades continuem funcionando corretamente, mesmo após as novas modificações. Mesmo com o reuso, geralmente nem todos os testes precisam ser re-executados, estimulando o uso de técnicas de seleção dos testes de regressão. Tais técnicas tentam selecionar dentre todos os testes, apenas aqueles que realmente precisam ser re-executados, isto reduz os custos, tornando a prática realmente atrativa para as equipes de desenvolvimento. Diversos estudos recentes buscam avaliar o desempenho de técnicas de seleção de testes de regressão, com o intuito de identificar qual delas se comporta melhor, através do uso de métricas como inclusão e precisão.

    Neste contexto, esta dissertação de mestrado propõe uma ferramenta implementada na linguagem Java para análise automatizada de técnicas de seleção de testes de regressão através da mineração do repositórios de software. A ferramenta é avaliada através da condução de um estudo empírico de análise da técnica de seleção baseada em diferenciação textual em um sistema de informação web de larga escala. O objetivo do estudo é avaliar os benefícios do uso da ferramenta na avaliação de técnicas de seleção de testes de regressão, e identificar o desempenho da técnica de diferenciação textual comparado com a seleção completa de todos os testes.

18
  • LEONARDO DANTAS DE OLIVEIRA
  • Extensões ao Projeto LVWNet: Mobilidade, interação com equipamentos reais, comunicação direta, e registro dinâmico de nós.

  • Orientador : MARCOS CESAR MADRUGA ALVES PINHEIRO
  • MEMBROS DA BANCA :
  • MARCOS CESAR MADRUGA ALVES PINHEIRO
  • AUGUSTO JOSE VENANCIO NETO
  • FLAVIO DE OLIVEIRA SILVA
  • Data: 05/06/2014

  • Mostrar Resumo
  • Com o crescimento constante da utilização de redes sem fio em ambientes domésticos, empresariais e até industriais, aparecem novos desafios. A prototipação de novos protocolos nesses ambientes tipicamente é restrita a ambientes de simulação, onde existe a necessidadede uma dupla implementação, uma no ambiente de simulação, onde se realiza uma prova de conceito inicial e outra em um ambiente real. Além disso, uma vez que se parta para ambientes reais, não é trivial a criação de um testbed para redes sem fio de alta densidade, dada a necessidade de uso de vários equipamentos reais, incluindo o uso de atenuadores e redutores de potência para tentar reduzir o espaço físico necessário para criação desses laboratórios. Nessa lacuna, o projeto LVWNet (Linux Virtual Wireless Network) foi inicialmente concebido para criação de testbeds completamente virtuais para redes IEEE 802.11 sobre o sistema operacional Linux. Este trabalho tem como objetivo extender o atual projeto LVWNet adicionando a ele os seguintes recursos: i) a possibilidade de interação com hardwares wireless reais, ii) suporte a mobilidade através do posicionamento dos nós em um ambiente de coordenadas no espaço baseado em metros, já com cálculos de perda decorrente da atenuação em espaço livre, iii) aumento da escalabilidade com a criação de um protocolo próprio quer permita a comunicação entre os nós sem necessidade de um host intermediário, e iv) definição de um protocol de registro de nós que permite a inserção de novos nós em uma rede já em operaçao.


  • Mostrar Abstract
  • Com o crescimento constante da utilização de redes sem fio em ambientes domésticos, empresariais e até industriais, aparecem novos desafios. A prototipação de novos protocolos nesses ambientes tipicamente é restrita a ambientes de simulação, onde existe a necessidadede uma dupla implementação, uma no ambiente de simulação, onde se realiza uma prova de conceito inicial e outra em um ambiente real. Além disso, uma vez que se parta para ambientes reais, não é trivial a criação de um testbed para redes sem fio de alta densidade, dada a necessidade de uso de vários equipamentos reais, incluindo o uso de atenuadores e redutores de potência para tentar reduzir o espaço físico necessário para criação desses laboratórios. Nessa lacuna, o projeto LVWNet (Linux Virtual Wireless Network) foi inicialmente concebido para criação de testbeds completamente virtuais para redes IEEE 802.11 sobre o sistema operacional Linux. Este trabalho tem como objetivo extender o atual projeto LVWNet adicionando a ele os seguintes recursos: i) a possibilidade de interação com hardwares wireless reais, ii) suporte a mobilidade através do posicionamento dos nós em um ambiente de coordenadas no espaço baseado em metros, já com cálculos de perda decorrente da atenuação em espaço livre, iii) aumento da escalabilidade com a criação de um protocolo próprio quer permita a comunicação entre os nós sem necessidade de um host intermediário, e iv) definição de um protocol de registro de nós que permite a inserção de novos nós em uma rede já em operaçao.

19
  • JOSÉ CASTILLO LEMA
  • Evolving the Future Internet Clean-Slate Entity Title Architecture with Advanced Quality-Oriented Control Mechanisms

  • Orientador : AUGUSTO JOSE VENANCIO NETO
  • MEMBROS DA BANCA :
  • AUGUSTO JOSE VENANCIO NETO
  • FLAVIO DE OLIVEIRA SILVA
  • MARCOS CESAR MADRUGA ALVES PINHEIRO
  • SERGIO TAKEO KOFUJI
  • Data: 31/07/2014

  • Mostrar Resumo
  • Current Internet has confronted quite a few problems in terms of network security, scalability, performance, etc., mainly due to the rapid increase of the number of end-users and various new service demands, requiring new solutions to support future usage scenarios. New Future Internet approaches targeting Information Centric Networking, such as the Entity Title Architecture (ETArch), provide new services and optimizations for these scenarios, using novel mechanisms leveraging the Software Defined Networking (SDN) concept. However, ETArch approach is equivalent to the Best Effort capability of current Internet, which limits achieving reliable communications. In this work, we evolved ETArch with both quality-oriented mobility and resilience functions following the over-provisioning paradigm to achieve advanced network resource allocation integrated with OpenFlow. The resulting framework, called Support of Mobile Sessions with High Transport Network Resource Demand (SMART), allows the network to semantically define the quality requirements of each session to drive network Quality of Service control seeking to keep best Quality of Experience. The results of the preliminary performance evaluation of SMART were analyzed using Mininet, showing that it allowed supporting mobile multimedia applications with high transport network resource and quality demand over time, as well as efficiently dealing with both mobility and resilience events.


  • Mostrar Abstract
  • Current Internet has confronted quite a few problems in terms of network security, scalability, performance, etc., mainly due to the rapid increase of the number of end-users and various new service demands, requiring new solutions to support future usage scenarios. New Future Internet approaches targeting Information Centric Networking, such as the Entity Title Architecture (ETArch), provide new services and optimizations for these scenarios, using novel mechanisms leveraging the Software Defined Networking (SDN) concept. However, ETArch approach is equivalent to the Best Effort capability of current Internet, which limits achieving reliable communications. In this work, we evolved ETArch with both quality-oriented mobility and resilience functions following the over-provisioning paradigm to achieve advanced network resource allocation integrated with OpenFlow. The resulting framework, called Support of Mobile Sessions with High Transport Network Resource Demand (SMART), allows the network to semantically define the quality requirements of each session to drive network Quality of Service control seeking to keep best Quality of Experience. The results of the preliminary performance evaluation of SMART were analyzed using Mininet, showing that it allowed supporting mobile multimedia applications with high transport network resource and quality demand over time, as well as efficiently dealing with both mobility and resilience events.

20
  • MATHEUS ABRANTES GADELHA
  • An Augmented Reality Pipeline to Create Scenes with Coherent Illumination Using Textured Cuboids 

  • Orientador : SELAN RODRIGUES DOS SANTOS
  • MEMBROS DA BANCA :
  • BRUNO MOTTA DE CARVALHO
  • SELAN RODRIGUES DOS SANTOS
  • VERONICA TEICHRIEB
  • Data: 21/08/2014

  • Mostrar Resumo
  • Shadows and illumination play an important role when generating a realistic scene in computer graphics. Most of the Augmented Reality (AR) systems track markers placed in a real scene and retrieve their position and orientation to serve as a frame of reference for added computer generated content, thereby producing an augmented scene. Realis- tic depiction of augmented content with coherent visual cues is a desired goal in many AR applications. However, rendering an augmented scene with realist illumination is a complex task. Many existent approaches rely on a non automated pre-processing phase to retrieve illumination parameters from the scene. Other techniques depend specific markers that contain light probes to perform environment lighting estimation. This study aims at designing a method to create AR applications with coherent illumination and shadows, using a textured cuboid marker, that does not requires a training phase to provide lighting information. Such marker may be easily found in common environments: most of product packaging satisfies such characteristics. We propose a way to estimate a directional light configuration using multiple texture tracking to render AR scenes in a realistic fashion. 


  • Mostrar Abstract
  • Shadows and illumination play an important role when generating a realistic scene in computer graphics. Most of the Augmented Reality (AR) systems track markers placed in a real scene and retrieve their position and orientation to serve as a frame of reference for added computer generated content, thereby producing an augmented scene. Realis- tic depiction of augmented content with coherent visual cues is a desired goal in many AR applications. However, rendering an augmented scene with realist illumination is a complex task. Many existent approaches rely on a non automated pre-processing phase to retrieve illumination parameters from the scene. Other techniques depend specific markers that contain light probes to perform environment lighting estimation. This study aims at designing a method to create AR applications with coherent illumination and shadows, using a textured cuboid marker, that does not requires a training phase to provide lighting information. Such marker may be easily found in common environments: most of product packaging satisfies such characteristics. We propose a way to estimate a directional light configuration using multiple texture tracking to render AR scenes in a realistic fashion. 

21
  • VERNER RAFAEL FERREIRA
  • ANÁLISE MORFOSSINTÁTICA APLICADA AO PROCESSO DE SUMARIZAÇÃO AUTOMÁTICA DE DOCUMENTOS DO PORTUGUÊS BRASILEIRO

  • Orientador : ANDRE MAURICIO CUNHA CAMPOS
  • MEMBROS DA BANCA :
  • ANDRE MAURICIO CUNHA CAMPOS
  • ANNE MAGALY DE PAULA CANUTO
  • CARLOS AUGUSTO PROLO
  • GLICIA MARILI AZEVEDO DE MEDEIROS
  • THAIGO ALEXANDRE SALGUEIRO PARDO
  • Data: 22/08/2014

  • Mostrar Resumo
  • A presente pesquisa estuda a aplicação da análise morfossintática de textos escritos no idioma do português brasileiro como uma metodologia para a criação de resumos automáticos de maneira extrativa. A automação de resumos, enquanto área vinculada ao processamento de linguagem natural, estuda a maneira como o computador pode, de maneira autônoma, construir resumos de textos. Dessa maneira, entendemos que passar para o computador, como instrução, a maneira como uma língua é estruturada, em nosso caso o português brasileiro, se apresenta como uma contribuição necessária para muitas áreas do conhecimento. Nesse estudo, propomos a definição de um método de sumarização que automaticamente realize a análise morfossintática de textos e, com isso, construa as suas cadeias sintagmáticas. Os sintagmas que compõem as estruturas sintáticas são então utilizados como elementos qualificadores para as sentenças do texto analisado, sendo que a contabilização desses elementos determina se uma sentença irá ou não compor o resumo a ser gerado.


  • Mostrar Abstract
  • A presente pesquisa estuda a aplicação da análise morfossintática de textos escritos no idioma do português brasileiro como uma metodologia para a criação de resumos automáticos de maneira extrativa. A automação de resumos, enquanto área vinculada ao processamento de linguagem natural, estuda a maneira como o computador pode, de maneira autônoma, construir resumos de textos. Dessa maneira, entendemos que passar para o computador, como instrução, a maneira como uma língua é estruturada, em nosso caso o português brasileiro, se apresenta como uma contribuição necessária para muitas áreas do conhecimento. Nesse estudo, propomos a definição de um método de sumarização que automaticamente realize a análise morfossintática de textos e, com isso, construa as suas cadeias sintagmáticas. Os sintagmas que compõem as estruturas sintáticas são então utilizados como elementos qualificadores para as sentenças do texto analisado, sendo que a contabilização desses elementos determina se uma sentença irá ou não compor o resumo a ser gerado.

22
  • KLEBER TAVARES FERNANDES
  • Modelo de Interoperabilidade para Utilização dos Recursos dos Ambientes Virtuais de Aprendizagem através de Dispositivos Móveis

  • Orientador : MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • MEMBROS DA BANCA :
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • LYRENE FERNANDES DA SILVA
  • ADILSON BARBOZA LOPES
  • APUENA VIEIRA GOMES
  • ROMMEL WLADIMIR DE LIMA
  • Data: 25/08/2014

  • Mostrar Resumo
  • A evolução tecnológica tem tornado a Educação a Distância acessível para um maior número de cidadãos em qualquer hora e em qualquer lugar. O aumento potencial da oferta de dispositivos móveis integrados a ambientes de aprendizado móvel permite que a informação saia dos ambientes físicos das instituições de ensino, oportunizando a alunos e professores criarem cenários de aprendizagem geograficamente distribuídos. Entretanto, muitos dos aplicativos desenvolvidos para estes ambientes ainda permanecem isolados uns dos outros e não se integram de maneira suficiente aos ambientes virtuais de aprendizagem (AVA). Esta dissertação apresenta um modelo de interoperabilidade entre dispositivos móveis e AVAs distintos baseado em webservices. Para a concepção deste modelo,  técnicas de engenharia de requisitos e arquitetura de software foram utilizadas. Com o intuito de mostrar a viabilidade do modelo foi desenvolvida uma aplicação móvel voltada para questionários, além disso, as principais funcionalidades relacionadas com interoperabilidade foram testadas.


  • Mostrar Abstract
  • A evolução tecnológica tem tornado a Educação a Distância acessível para um maior número de cidadãos em qualquer hora e em qualquer lugar. O aumento potencial da oferta de dispositivos móveis integrados a ambientes de aprendizado móvel permite que a informação saia dos ambientes físicos das instituições de ensino, oportunizando a alunos e professores criarem cenários de aprendizagem geograficamente distribuídos. Entretanto, muitos dos aplicativos desenvolvidos para estes ambientes ainda permanecem isolados uns dos outros e não se integram de maneira suficiente aos ambientes virtuais de aprendizagem (AVA). Esta dissertação apresenta um modelo de interoperabilidade entre dispositivos móveis e AVAs distintos baseado em webservices. Para a concepção deste modelo,  técnicas de engenharia de requisitos e arquitetura de software foram utilizadas. Com o intuito de mostrar a viabilidade do modelo foi desenvolvida uma aplicação móvel voltada para questionários, além disso, as principais funcionalidades relacionadas com interoperabilidade foram testadas.

23
  • ROMULO DE OLIVEIRA NUNES
  • Konect: framework de desenvolvimento para aplicações do Kinect.

  • Orientador : ANDRE MAURICIO CUNHA CAMPOS
  • MEMBROS DA BANCA :
  • ANDRE MAURICIO CUNHA CAMPOS
  • ANDRÉ LUÍS DE MEDEIROS SANTOS
  • LEONARDO CUNHA DE MIRANDA
  • SELAN RODRIGUES DOS SANTOS
  • Data: 27/08/2014

  • Mostrar Resumo
  • O desenvolvimento para a plataforma Microsoft Kinect (ou simplesmente Kinect) vem se intensificando à medida que o hardware apresenta-se constantemente como parte integrante de soluções para problemas importantes nas áreas de Computação Médica, Realidade Virtual ou mesmo seu propósito básico inicial: a indústria de Entretenimento. Com a sua popularização, as ferramentas básicas de desenvolvimento oferecidas pela Microsoft têm apresentado ao público geral complicações que poderiam ser evitadas, como a correta configuração e inicialização dos recursos oferecidos pelo hardware. Assim, este trabalho tem como objetivo desenvolver e avaliar um framework específico para a plataforma Kinect, que auxilie usuários que estão começando a desenvolver aplicações para essa plataforma, apresentando os principais componentes e como eles foram testados e avaliados pelos usuários. Este trabalho também apresenta uma pesquisa realizada com os jogos mais vendidos e melhores avaliados do Kinect, visando extrarir os principais componentes neles presentes para formar a estrutura do framework.


  • Mostrar Abstract
  • O desenvolvimento para a plataforma Microsoft Kinect (ou simplesmente Kinect) vem se intensificando à medida que o hardware apresenta-se constantemente como parte integrante de soluções para problemas importantes nas áreas de Computação Médica, Realidade Virtual ou mesmo seu propósito básico inicial: a indústria de Entretenimento. Com a sua popularização, as ferramentas básicas de desenvolvimento oferecidas pela Microsoft têm apresentado ao público geral complicações que poderiam ser evitadas, como a correta configuração e inicialização dos recursos oferecidos pelo hardware. Assim, este trabalho tem como objetivo desenvolver e avaliar um framework específico para a plataforma Kinect, que auxilie usuários que estão começando a desenvolver aplicações para essa plataforma, apresentando os principais componentes e como eles foram testados e avaliados pelos usuários. Este trabalho também apresenta uma pesquisa realizada com os jogos mais vendidos e melhores avaliados do Kinect, visando extrarir os principais componentes neles presentes para formar a estrutura do framework.

24
  • LAUDSON SILVA DE SOUZA
  • Estimativa em Projetos de Desenvolvimento de Aplicações Móveis

  • Orientador : GIBEON SOARES DE AQUINO JUNIOR
  • MEMBROS DA BANCA :
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • FERNANDO MARQUES FIGUEIRA FILHO
  • GIBEON SOARES DE AQUINO JUNIOR
  • SÉRGIO CASTELO BRANCO SOARES
  • Data: 28/08/2014

  • Mostrar Resumo
  • A ascensão do uso de tecnologias móveis no mundo, como smartphones e tablets, conectados a redes móveis, vem mudando velhos hábitos e criando novas maneiras da sociedade acessar informações e interagir com sistemas computacionais. Dessa forma, os sistemas de informação tradicionais estão passando por um processo de adequação a esse novo contexto computacional. Entretanto, é importante destacar que as características desse novo contexto são diferentes. Nele existem novos recursos e consequentemente novas possibilidades assim como restrições não existentes antes. Enfim, os sistemas desenvolvidos para esse ambiente possuem requisitos e características diferentes dos sistemas de informação tradicionais. Por este motivo, existe a necessidade de reavaliar o conhecimento atual sobre os processos de planejamento e construção para o desenvolvimento de sistemas neste novo ambiente. Uma área, em particular, que demanda tal adequação é a de estimativa de software. Os processos de estimativa, de uma maneira geral, se baseiam nas características dos sistemas, tentando quantificar a complexidade de implementá-los. Diante disto, o objetivo principal desse trabalho é apresentar uma proposta de modelo de estimativa para desenvolvimento de aplicações móveis. Ao longo do trabalho analisamos os métodos de estimativas existentes, identificamos características específicas de sistemas para dispositivos móveis e finalmente será proposta uma adaptação para esta área de um método de estimativa já existente.


  • Mostrar Abstract
  • A ascensão do uso de tecnologias móveis no mundo, como smartphones e tablets, conectados a redes móveis, vem mudando velhos hábitos e criando novas maneiras da sociedade acessar informações e interagir com sistemas computacionais. Dessa forma, os sistemas de informação tradicionais estão passando por um processo de adequação a esse novo contexto computacional. Entretanto, é importante destacar que as características desse novo contexto são diferentes. Nele existem novos recursos e consequentemente novas possibilidades assim como restrições não existentes antes. Enfim, os sistemas desenvolvidos para esse ambiente possuem requisitos e características diferentes dos sistemas de informação tradicionais. Por este motivo, existe a necessidade de reavaliar o conhecimento atual sobre os processos de planejamento e construção para o desenvolvimento de sistemas neste novo ambiente. Uma área, em particular, que demanda tal adequação é a de estimativa de software. Os processos de estimativa, de uma maneira geral, se baseiam nas características dos sistemas, tentando quantificar a complexidade de implementá-los. Diante disto, o objetivo principal desse trabalho é apresentar uma proposta de modelo de estimativa para desenvolvimento de aplicações móveis. Ao longo do trabalho analisamos os métodos de estimativas existentes, identificamos características específicas de sistemas para dispositivos móveis e finalmente será proposta uma adaptação para esta área de um método de estimativa já existente.

25
  • TAINÁ JESUS MEDEIROS
  • Um Framework para criação de jogos voltados para o ensino de lógica de programação

  • Orientador : EDUARDO HENRIQUE DA SILVA ARANHA
  • MEMBROS DA BANCA :
  • ANDRE MAURICIO CUNHA CAMPOS
  • ANDRÉ LUÍS DE MEDEIROS SANTOS
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • LEONARDO CUNHA DE MIRANDA
  • Data: 29/08/2014

  • Mostrar Resumo
  • Os jogos digitais vêm sendo utilizados como ferramenta de auxilio à transmissão de conhecimento, permitindo difundir o conteúdo mais rapidamente. Utilizar essa estratégia para disseminar o desenvolvimento do raciocínio lógico para crianças do nível básico pode ser a engrenagem motivadora que ajuda no processo de aprendizagem para qualquer área. Pensando nisso, diversos jogos podem ser criados e disponibilizados para o uso do professor e aluno, porém, a complexidade de construção desses jogos torna-se um percalço que inviabiliza, muitas das vezes, sua construção. Neste contexto, este artigo apresenta um framework para criação de jogos voltados para o ensino de lógica de programação, apresentando a concepção, desenvolvimento através da integração do ambiente visual de programação blockly com cenários criados em HTML5.


  • Mostrar Abstract
  • Os jogos digitais vêm sendo utilizados como ferramenta de auxilio à transmissão de conhecimento, permitindo difundir o conteúdo mais rapidamente. Utilizar essa estratégia para disseminar o desenvolvimento do raciocínio lógico para crianças do nível básico pode ser a engrenagem motivadora que ajuda no processo de aprendizagem para qualquer área. Pensando nisso, diversos jogos podem ser criados e disponibilizados para o uso do professor e aluno, porém, a complexidade de construção desses jogos torna-se um percalço que inviabiliza, muitas das vezes, sua construção. Neste contexto, este artigo apresenta um framework para criação de jogos voltados para o ensino de lógica de programação, apresentando a concepção, desenvolvimento através da integração do ambiente visual de programação blockly com cenários criados em HTML5.

26
  • HÉLDON JOSÉ OLIVEIRA ALBUQUERQUE
  • Solução para Interoperabilidade de protocolos em Smarthomes

  • Orientador : GIBEON SOARES DE AQUINO JUNIOR
  • MEMBROS DA BANCA :
  • AUGUSTO JOSE VENANCIO NETO
  • FREDERICO ARAUJO DA SILVA LOPES
  • GIBEON SOARES DE AQUINO JUNIOR
  • VINICIUS CARDOSO GARCIA
  • Data: 29/08/2014

  • Mostrar Resumo
  • Durante os últimos anos, foi possível observar como os dispositivos móveis vem sendo inseridos na
    vida das pessoas, tornando-se seus principais assistentes pessoais e ajudando em várias
    tarefas diárias. Contudo, não apenas os dispositivos móveis têm evoluído. Outros dispositivos
    eletrônicos que usamos todos os dias também experimentaram mudanças que os
    tornam mais inteligente, como o exemplo de dispositivos domésticos. Todos estes dispositivos
    interligados no mesmo ambiente ou na mesma rede, fazendo uso de serviços e troca de
    informações com outros dispositivos, caracterizam um ambiente inteligente. Smarthomes
    são classes especiais de tais ambientes e, cada vez mais, torna-se um ambiente com uma
    variedade de dispositivos heterogéneos. No entanto, devido ao rápido progresso da tecnologia
    e o surgimento de um grande número de dispositivos heterogêneos, uma diversidade de
    diferentes protocolos independentes foi criada, estabelecendo um cenário complexo para
    garantir interoperabilidade entre eles. Neste contexto, o principal objetivo deste trabalho
    é analisar o estado da arte, com ênfase na a interoperabilidade dos atuais dispositivos mó-
    veis com outros meios de dispositivos digitais presentes numa smarthome. Assim, serão
    denidos quais protocolos são atualmente mais utilizados para este m, quais são os atuais
    projetos em andamento, quais são as limitações das soluções encontradas na pesquisa e,
    nalmente, propor uma solução alternativa para a interoperabilidade entre os dispositivos
    em uma smarthome.


  • Mostrar Abstract
  • Durante os últimos anos, foi possível observar como os dispositivos móveis vem sendo inseridos na
    vida das pessoas, tornando-se seus principais assistentes pessoais e ajudando em várias
    tarefas diárias. Contudo, não apenas os dispositivos móveis têm evoluído. Outros dispositivos
    eletrônicos que usamos todos os dias também experimentaram mudanças que os
    tornam mais inteligente, como o exemplo de dispositivos domésticos. Todos estes dispositivos
    interligados no mesmo ambiente ou na mesma rede, fazendo uso de serviços e troca de
    informações com outros dispositivos, caracterizam um ambiente inteligente. Smarthomes
    são classes especiais de tais ambientes e, cada vez mais, torna-se um ambiente com uma
    variedade de dispositivos heterogéneos. No entanto, devido ao rápido progresso da tecnologia
    e o surgimento de um grande número de dispositivos heterogêneos, uma diversidade de
    diferentes protocolos independentes foi criada, estabelecendo um cenário complexo para
    garantir interoperabilidade entre eles. Neste contexto, o principal objetivo deste trabalho
    é analisar o estado da arte, com ênfase na a interoperabilidade dos atuais dispositivos mó-
    veis com outros meios de dispositivos digitais presentes numa smarthome. Assim, serão
    denidos quais protocolos são atualmente mais utilizados para este m, quais são os atuais
    projetos em andamento, quais são as limitações das soluções encontradas na pesquisa e,
    nalmente, propor uma solução alternativa para a interoperabilidade entre os dispositivos
    em uma smarthome.

27
  • JOSE FRANCISCO DA SILVA NETO
  • Segmentação Fuzzy de Objetos Tridimensionais com Propriedades Texturais

  • Orientador : BRUNO MOTTA DE CARVALHO
  • MEMBROS DA BANCA :
  • BRUNO MOTTA DE CARVALHO
  • SELAN RODRIGUES DOS SANTOS
  • FRANCISCO MILTON MENDES NETO
  • Data: 25/09/2014

  • Mostrar Resumo
  • Segmentação digital de imagens é o processo de atribuir rótulos distintos a diferentes
    objetos em uma imagem digital, e o algoritmo de segmentação fuzzy tem sido utilizado
    com sucesso na segmentação de imagens de diversas modalidades. Contudo, o algoritmo
    tradicional de segmentação fuzzy falha ao segmentar objetos que são caracterizados por
    texturas cujos padrões não podem ser descritos adequadamente por simples estatísticas
    computadas sobre uma área restrita. Neste trabalho apresentamos uma extensão do al-
    goritmo de segmentação fuzzy que realiza segmentação de texturas empregando funções
    de afinidade adaptativas e o estendemos a imagens tridimensionais. Funções de afinidade
    adaptativas mudam o tamanho da área em que são calculados os descritores da textura de
    acordo com as características da textura processada, enquanto imagens tridimensionais
    podem ser descritas como um conjunto finito de imagens bidimensionais. O algoritmo en-
    tão segmenta o volume com uma área apropriada calculada para cada objeto (textura), tornando
    possível obter boas estimativas dos volumes reais das estruturas alvo do processo de seg-
    mentação. Experimentos serão realizados com dados sintéticos e reais obtidos no estudo
    de segmentação de tumores cerebrais em imagens médicas adquiridas através de exames
    de Ressonância Magnética.


  • Mostrar Abstract
  • Segmentação digital de imagens é o processo de atribuir rótulos distintos a diferentes
    objetos em uma imagem digital, e o algoritmo de segmentação fuzzy tem sido utilizado
    com sucesso na segmentação de imagens de diversas modalidades. Contudo, o algoritmo
    tradicional de segmentação fuzzy falha ao segmentar objetos que são caracterizados por
    texturas cujos padrões não podem ser descritos adequadamente por simples estatísticas
    computadas sobre uma área restrita. Neste trabalho apresentamos uma extensão do al-
    goritmo de segmentação fuzzy que realiza segmentação de texturas empregando funções
    de afinidade adaptativas e o estendemos a imagens tridimensionais. Funções de afinidade
    adaptativas mudam o tamanho da área em que são calculados os descritores da textura de
    acordo com as características da textura processada, enquanto imagens tridimensionais
    podem ser descritas como um conjunto finito de imagens bidimensionais. O algoritmo en-
    tão segmenta o volume com uma área apropriada calculada para cada objeto (textura), tornando
    possível obter boas estimativas dos volumes reais das estruturas alvo do processo de seg-
    mentação. Experimentos serão realizados com dados sintéticos e reais obtidos no estudo
    de segmentação de tumores cerebrais em imagens médicas adquiridas através de exames
    de Ressonância Magnética.

28
  • ALYSON MATHEUS DE CARVALHO SOUZA
  • Investigando a compressão da percepção de distância em ambientes virtuais através da comparação entre dispositivos de visualização

  • Orientador : SELAN RODRIGUES DOS SANTOS
  • MEMBROS DA BANCA :
  • ANDRE MAURICIO CUNHA CAMPOS
  • BRUNO MOTTA DE CARVALHO
  • JAUVANE CAVALCANTE DE OLIVEIRA
  • SELAN RODRIGUES DOS SANTOS
  • Data: 25/09/2014

  • Mostrar Resumo
  • A percepção correta de distâncias é importante para a execução de diversas tarefas interativas, como navegação, seleção e manipulação. É sabido, no entanto, que, em geral, existe uma significativa compressão das distâncias percebidas em ambientes virtuais, prin- cipalmente quando há a utilização de Head Mounted Displays - HMDs. Essa compressão de distância percebida pode trazer à aplicação diversos problemas e até afetar negativa- mente a utilidade de aplicações que dependem desse julgamento correto. A comunidade científica, até o presente, não conseguiu determinar as causas do fenômeno da compressão da percepção de distância em ambientes virtuais. Por esse motivo, foi o objetivo desse trabalho buscar, através de experimentos com usuários, possíveis fatores que pudessem influenciar no surgimento deste problema. Para tal, foi feita uma comparação experimen- tal entre o my3D e o HMD, utilizando 32 participantes, a fim de encontrar pistas sobre as causas da percepção comprimida. Os resultados indicaram que o my3D possui capaci- dades inferiores ao HMD, produzindo estimativas piores, em média, em ambos os casos testados. As causas apontadas para tal foram o estímulo incorreto da visão periférica, o Field-of-view - FoV - inferior e a menor imersão, segundo descrito pelos participantes do experimento.


  • Mostrar Abstract
  • A percepção correta de distâncias é importante para a execução de diversas tarefas interativas, como navegação, seleção e manipulação. É sabido, no entanto, que, em geral, existe uma significativa compressão das distâncias percebidas em ambientes virtuais, prin- cipalmente quando há a utilização de Head Mounted Displays - HMDs. Essa compressão de distância percebida pode trazer à aplicação diversos problemas e até afetar negativa- mente a utilidade de aplicações que dependem desse julgamento correto. A comunidade científica, até o presente, não conseguiu determinar as causas do fenômeno da compressão da percepção de distância em ambientes virtuais. Por esse motivo, foi o objetivo desse trabalho buscar, através de experimentos com usuários, possíveis fatores que pudessem influenciar no surgimento deste problema. Para tal, foi feita uma comparação experimen- tal entre o my3D e o HMD, utilizando 32 participantes, a fim de encontrar pistas sobre as causas da percepção comprimida. Os resultados indicaram que o my3D possui capaci- dades inferiores ao HMD, produzindo estimativas piores, em média, em ambos os casos testados. As causas apontadas para tal foram o estímulo incorreto da visão periférica, o Field-of-view - FoV - inferior e a menor imersão, segundo descrito pelos participantes do experimento.

29
  • EDSON ALYPPYO GOMES COUTINHO
  • Investigando o Uso do Sentido Háptico na Visualização de Dados Multivariados em Gráficos de Dispersão Bidimensionais

  • Orientador : SELAN RODRIGUES DOS SANTOS
  • MEMBROS DA BANCA :
  • ANDRE MAURICIO CUNHA CAMPOS
  • BRUNO MOTTA DE CARVALHO
  • LILIANE DOS SANTOS MACHADO
  • SELAN RODRIGUES DOS SANTOS
  • Data: 26/09/2014

  • Mostrar Resumo
  • A Visualização de dados é amplamente utilizada pelas mais diversas áreas do conhecimento para facilitar a compreensão de informações e encontrar relações entre os dados. Uma das técnicas de visualização para dados multivariados (4 ou mais variáveis) é o Gráfico de Dispersão Bidimensional (GD2D). Esta técnica associa cada item de dado a uma marca visual da seguinte forma: duas variáveis são mapeadas para as coordenadas Cartesianas de maneira a posicionar as marcas visuais no Plano Cartesiano; as demais variáveis são mapeadas progressivamente para propriedades gráficas das marcas, como tamanho, cor, forma, dentre outras. Quanto maior o número de variáveis a serem visualizadas maior a quantidade de propriedades visuais adicionados à marca e, consequentemente, maior a complexidade da visualização final. Aumentar a complexidade da visualização, contudo, não necessariamente implica em uma melhor visualização e, muitas vezes, proporciona o efeito inverso, tornando a visualização visualmente poluída e confusa—esse problema é conhecido como sobrecarga de propriedades visuais.

    Este trabalho teve por objetivo investigar se é possível contornar a sobrecarga do canal visual e melhorar a obtenção de insight sobre dados multivariados visualizados através de uma modificação da técnica GD2D. Nesta modificação, mapeamos as variáveis dos itens de dados para marcas multisensoriais. Estas marcas são compostas não apenas de propriedades visuais, mas também de hápticas, como vibração, viscosidade e resistência elástica. Acreditamos que essa abordagem possa facilitar o insight, através da transposição de variáveis do canal visual para o canal háptico. A validação dessa hipótese foi feita através de experimentos, nos quais foram analisados: (a) a acurácia nas respostas; (b) o tempo de resposta, e; (c) o grau de satisfação pessoal com a abordagem proposta. 


  • Mostrar Abstract
  • A Visualização de dados é amplamente utilizada pelas mais diversas áreas do conhecimento para facilitar a compreensão de informações e encontrar relações entre os dados. Uma das técnicas de visualização para dados multivariados (4 ou mais variáveis) é o Gráfico de Dispersão Bidimensional (GD2D). Esta técnica associa cada item de dado a uma marca visual da seguinte forma: duas variáveis são mapeadas para as coordenadas Cartesianas de maneira a posicionar as marcas visuais no Plano Cartesiano; as demais variáveis são mapeadas progressivamente para propriedades gráficas das marcas, como tamanho, cor, forma, dentre outras. Quanto maior o número de variáveis a serem visualizadas maior a quantidade de propriedades visuais adicionados à marca e, consequentemente, maior a complexidade da visualização final. Aumentar a complexidade da visualização, contudo, não necessariamente implica em uma melhor visualização e, muitas vezes, proporciona o efeito inverso, tornando a visualização visualmente poluída e confusa—esse problema é conhecido como sobrecarga de propriedades visuais.

    Este trabalho teve por objetivo investigar se é possível contornar a sobrecarga do canal visual e melhorar a obtenção de insight sobre dados multivariados visualizados através de uma modificação da técnica GD2D. Nesta modificação, mapeamos as variáveis dos itens de dados para marcas multisensoriais. Estas marcas são compostas não apenas de propriedades visuais, mas também de hápticas, como vibração, viscosidade e resistência elástica. Acreditamos que essa abordagem possa facilitar o insight, através da transposição de variáveis do canal visual para o canal háptico. A validação dessa hipótese foi feita através de experimentos, nos quais foram analisados: (a) a acurácia nas respostas; (b) o tempo de resposta, e; (c) o grau de satisfação pessoal com a abordagem proposta. 

30
  • JALERSON RAPOSO FERREIRA DE LIMA
  • Uma Abordagem de Apoio à Gerência de Projetos de Software para Análise da Contribuição de Desenvolvedores 

  • Orientador : UIRA KULESZA
  • MEMBROS DA BANCA :
  • UIRA KULESZA
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • FERNANDO MARQUES FIGUEIRA FILHO
  • MARCO AURÉLIO GEROSA
  • Data: 14/10/2014

  • Mostrar Resumo
  • A produtividade é um importante atributo para equipes de desenvolvimento e empresas de software manterem a competitividade no mercado. Contudo, a produtividade de uma equipe depende diretamente da contribuição individual de seus desenvolvedores. Infelizmente não há consenso, na literatura, sobre como medir essa contribuição. Avanços nessa área incluem trabalhos que propõem utilizar métricas baseadas em mineração de repositórios como indicadores de contribuição. No entanto, esses trabalhos ainda carecem de estudos para validar a utilidade e aplicabilidade de tais métricas no contexto de gerência de software. Este trabalho de dissertação apresenta: (i) uma abordagem de apoio à gerencia de projetos para acompanhamento da contribuição de desenvolvedores; e (ii) a condução de um estudo de avaliação da abordagem proposta no contexto de uma instituição de desenvolvimento de software realizada em colaboração com gerentes de projetos reais. Os resultados do estudo apontam que as métricas que compõem a abordagem são bastante utéis para análise da contribuição individual de desenvolvedores, mas não devem ser usadas de forma exclusiva, devendo ser também consideradas atributos subjetivos relacionados a outras atividades não relacionadas a programação.


  • Mostrar Abstract
  • A produtividade é um importante atributo para equipes de desenvolvimento e empresas de software manterem a competitividade no mercado. Contudo, a produtividade de uma equipe depende diretamente da contribuição individual de seus desenvolvedores. Infelizmente não há consenso, na literatura, sobre como medir essa contribuição. Avanços nessa área incluem trabalhos que propõem utilizar métricas baseadas em mineração de repositórios como indicadores de contribuição. No entanto, esses trabalhos ainda carecem de estudos para validar a utilidade e aplicabilidade de tais métricas no contexto de gerência de software. Este trabalho de dissertação apresenta: (i) uma abordagem de apoio à gerencia de projetos para acompanhamento da contribuição de desenvolvedores; e (ii) a condução de um estudo de avaliação da abordagem proposta no contexto de uma instituição de desenvolvimento de software realizada em colaboração com gerentes de projetos reais. Os resultados do estudo apontam que as métricas que compõem a abordagem são bastante utéis para análise da contribuição individual de desenvolvedores, mas não devem ser usadas de forma exclusiva, devendo ser também consideradas atributos subjetivos relacionados a outras atividades não relacionadas a programação.

31
  • GIULIANA SILVA BEZERRA
  • A framework for investigating the use of face features to identify naturally generated emotion

  • Orientador : MARJORY CRISTIANY DA COSTA ABREU
  • MEMBROS DA BANCA :
  • BRUNO MOTTA DE CARVALHO
  • FIVIA DE ARAUJO LOPES
  • MARJORY CRISTIANY DA COSTA ABREU
  • WILLIAM ROBSON SCHWARTZ
  • Data: 12/12/2014

  • Mostrar Resumo
  • Emotion-based analysis has raised a lot of interest, particularly in areas such as forensics, medicine, music, psychology, and human-machine interface. Following this trend, the use of facial analysis (either automatic or human-based) is the most common subject to be investigated once this type of data can easily be collected and is well accepted in the literature as a metric for inference of emotional states. Despite this popularity, due to several constraints found in real world scenarios (e.g. lightning, complex backgrounds, facial hair and so on), automatically obtaining affective information from face accurately is a very challenging accomplishment. This work presents a framework which aims to analyse emotional experiences through naturally generated facial expressions. Our main contribution is a new 4-dimensional model to describe emotional experiences in terms of appraisal, facial expressions, mood, and subjective experiences. In addition, we present an experiment using a new protocol proposed to obtain spontaneous emotional reactions. The results have suggested that the initial emotional state described by the participants of the experiment was different from that described after the exposure to the eliciting stimulus, thus showing that the used stimuli were capable of inducing the expected emotional states in most individuals. Moreover, our results pointed out that spontaneous facial reactions to emotions are very different from those in prototypic expressions due to the lack of expressiveness in the latter.


  • Mostrar Abstract
  • Emotion-based analysis has raised a lot of interest, particularly in areas such as forensics, medicine, music, psychology, and human-machine interface. Following this trend, the use of facial analysis (either automatic or human-based) is the most common subject to be investigated once this type of data can easily be collected and is well accepted in the literature as a metric for inference of emotional states. Despite this popularity, due to several constraints found in real world scenarios (e.g. lightning, complex backgrounds, facial hair and so on), automatically obtaining affective information from face accurately is a very challenging accomplishment. This work presents a framework which aims to analyse emotional experiences through naturally generated facial expressions. Our main contribution is a new 4-dimensional model to describe emotional experiences in terms of appraisal, facial expressions, mood, and subjective experiences. In addition, we present an experiment using a new protocol proposed to obtain spontaneous emotional reactions. The results have suggested that the initial emotional state described by the participants of the experiment was different from that described after the exposure to the eliciting stimulus, thus showing that the used stimuli were capable of inducing the expected emotional states in most individuals. Moreover, our results pointed out that spontaneous facial reactions to emotions are very different from those in prototypic expressions due to the lack of expressiveness in the latter.

Teses
1
  • CAIO SÉRGIO DE VASCONCELOS BATISTA
  • Um Monitor de Metadados de QoS e QoC para Plataformas de Middleware 

  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • FLAVIA COIMBRA DELICATO
  • MARCOS CESAR MADRUGA ALVES PINHEIRO
  • NOEMI DE LA ROCQUE RODRIGUEZ
  • PAULO DE FIGUEIREDO PIRES
  • THAIS VASCONCELOS BATISTA
  • Data: 06/02/2014

  • Mostrar Resumo
  • Aplicações cientes de contexto são tipicamente dinâmicas e caracterizam-se por utilizar serviços providos por várias fontes, com diferentes níveis de qualidade. A qualidade de uma informação de contexto é expressa através dos metadados de Qualidade de Contexto (QoC), como precisão, corretude, atualidade, resolução. Por sua vez, a qualidade de um serviço é expressa através dos metadados de Qualidade de Serviço (QoS), como tempo de resposta, taxa de erro, disponibilidade e tempo médio entre falhas. Para garantir que uma aplicação está utilizando serviços e informações de contexto com níveis de QoS e QoC que satisfaçam seus requisitos, é essencial que elas estejam continuamente cientes desses metadados. Para tanto, é necessário utilizar um mecanismo de monitoramento de QoS e QoC que atenda aos seguinte requisitos:  (i) forneça suporte a aferição e monitoramento de metadados de QoS e QoC; (ii) opere de forma síncrona, realizando monitoramento em intervalos de tempos predefinidos, como também de forma assíncrona, permitindo que a aplicação especifique uma condição e o monitor informe quando ocorre algum evento que satisfaça a condição; (iii) use ontologias para representação da informação de forma a evitar interpretações ambíguas. Este trabalho propõe o QoMonitor, um módulo para monitoramento de metadados de QoS e QoC que atende a tais requisitos. De forma a ilustrar o uso do QoMonitor no contexto das aplicações ubíquas ele é integrado ao OpenCOPI, uma plataforma integradora de diferentes middleware de provisão de contexto que fornecem serviços e seus respectivos metadados. Para validar o uso do QoMonitor são utilizados duas aplicações que exploram as suas capacidades:  uma aplicação da indústria de petróleo e gás, e uma aplicação de healthcare. Esse trabalho também apresenta uma avaliação do QoMonitor em termos de desempenho.


  • Mostrar Abstract
  • Aplicações cientes de contexto são tipicamente dinâmicas e caracterizam-se por utilizar serviços providos por várias fontes, com diferentes níveis de qualidade. A qualidade de uma informação de contexto é expressa através dos metadados de Qualidade de Contexto (QoC), como precisão, corretude, atualidade, resolução. Por sua vez, a qualidade de um serviço é expressa através dos metadados de Qualidade de Serviço (QoS), como tempo de resposta, taxa de erro, disponibilidade e tempo médio entre falhas. Para garantir que uma aplicação está utilizando serviços e informações de contexto com níveis de QoS e QoC que satisfaçam seus requisitos, é essencial que elas estejam continuamente cientes desses metadados. Para tanto, é necessário utilizar um mecanismo de monitoramento de QoS e QoC que atenda aos seguinte requisitos:  (i) forneça suporte a aferição e monitoramento de metadados de QoS e QoC; (ii) opere de forma síncrona, realizando monitoramento em intervalos de tempos predefinidos, como também de forma assíncrona, permitindo que a aplicação especifique uma condição e o monitor informe quando ocorre algum evento que satisfaça a condição; (iii) use ontologias para representação da informação de forma a evitar interpretações ambíguas. Este trabalho propõe o QoMonitor, um módulo para monitoramento de metadados de QoS e QoC que atende a tais requisitos. De forma a ilustrar o uso do QoMonitor no contexto das aplicações ubíquas ele é integrado ao OpenCOPI, uma plataforma integradora de diferentes middleware de provisão de contexto que fornecem serviços e seus respectivos metadados. Para validar o uso do QoMonitor são utilizados duas aplicações que exploram as suas capacidades:  uma aplicação da indústria de petróleo e gás, e uma aplicação de healthcare. Esse trabalho também apresenta uma avaliação do QoMonitor em termos de desempenho.

2
  • SEVERINO PAULO GOMES NETO
  • Melhorando a Estimação de Pose com o RANSAC Preemptivo Generalizado e Múltiplos Geradores de Hipóteses

  • Orientador : BRUNO MOTTA DE CARVALHO
  • MEMBROS DA BANCA :
  • BRUNO MOTTA DE CARVALHO
  • SELAN RODRIGUES DOS SANTOS
  • LUIZ MARCOS GARCIA GONCALVES
  • JOAQUIM BENTO CAVALCANTE NETO
  • VERONICA TEICHRIEB
  • Data: 27/02/2014

  • Mostrar Resumo
  • A estimativa de pose/movimento de câmera constitui um dos problemas fundamentais na
    visão computacional e pode ser resolvido por vários métodos. Dentre estes métodos se
    destaca o Preemptive RANSAC (RANSAC Preemptivo), que apesar da robustez e velocidade
    apresenta problemas de flexibilidade em relação a requerimentos das aplicações
    e plataformas computacionais utilizadas. Neste trabalho, propomos um aperfeiçoamento
    da estrutura do Preemptive RANSAC para superar esta limitação e viabilizar sua execução
    em dispositivos com recursos variados (enfatizando os de poucas capacidades) atendendo
    a requisitos de tempo e precisão variados. Derivamos do Preemptive RANSAC
    uma função a que chamamos BRUMA, que é capaz de generalizar vários esquemas de
    preempção e que permite que parâmetros anteriormente fixos (tamanho de bloco e fator
    de eliminação) sejam configurados de acordo com as restrições da aplicação. Propomos o
    método Generalized Preemptive RANSAC (RANSAC Preemptivo Generalizado) que permite
    ainda alterar a quantidade máxima de hipóteses a gerar. Os experimentos demonstraram
    superioridade de nossa proposta nos cenários esperados. Além disso, experimentos
    adicionais demonstram que a geração de hipóteses multimétodos produz resultados mais
    robustos em relação à variabilidade nos tipos de movimento executados.


  • Mostrar Abstract
  • A estimativa de pose/movimento de câmera constitui um dos problemas fundamentais na
    visão computacional e pode ser resolvido por vários métodos. Dentre estes métodos se
    destaca o Preemptive RANSAC (RANSAC Preemptivo), que apesar da robustez e velocidade
    apresenta problemas de flexibilidade em relação a requerimentos das aplicações
    e plataformas computacionais utilizadas. Neste trabalho, propomos um aperfeiçoamento
    da estrutura do Preemptive RANSAC para superar esta limitação e viabilizar sua execução
    em dispositivos com recursos variados (enfatizando os de poucas capacidades) atendendo
    a requisitos de tempo e precisão variados. Derivamos do Preemptive RANSAC
    uma função a que chamamos BRUMA, que é capaz de generalizar vários esquemas de
    preempção e que permite que parâmetros anteriormente fixos (tamanho de bloco e fator
    de eliminação) sejam configurados de acordo com as restrições da aplicação. Propomos o
    método Generalized Preemptive RANSAC (RANSAC Preemptivo Generalizado) que permite
    ainda alterar a quantidade máxima de hipóteses a gerar. Os experimentos demonstraram
    superioridade de nossa proposta nos cenários esperados. Além disso, experimentos
    adicionais demonstram que a geração de hipóteses multimétodos produz resultados mais
    robustos em relação à variabilidade nos tipos de movimento executados.

3
  • MATHEUS DA SILVA MENEZES
  •  O Problema do Caixeiro Alugador com Coleta de Bônus: Um estudo Algorítmico

  • Orientador : MARCO CESAR GOLDBARG
  • MEMBROS DA BANCA :
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • HENRIQUE PACCA LOUREIRO LUNA
  • ILONEIDE CARLOS DE OLIVEIRA RAMOS
  • MARCO CESAR GOLDBARG
  • MYRIAM REGATTIERI DE BIASE DA SILVA DELGADO
  • Data: 21/03/2014

  • Mostrar Resumo
  • A pesquisa relata uma nova variante do Caixeiro Alugador denomindada: O Problema do Caixeiro Alugador com Coleta de Bônus. O modelo é formulado. É desenvolvido um algoritmo exato de solução para o modelo formulado. São desenvolvidos três algoritmos metaheurísticos envolvendo Greed Randomized Adaptative Search, Busca Local e Computação Evolucionária. Um experimento computacional é relatado de forma a avaliar o desempenho dos algositmos de solução desenvolvidos, bem como conclusões são alcançadas. Uma proposta de finalização da pesquisa é apresentada. 


  • Mostrar Abstract
  • A pesquisa relata uma nova variante do Caixeiro Alugador denomindada: O Problema do Caixeiro Alugador com Coleta de Bônus. O modelo é formulado. É desenvolvido um algoritmo exato de solução para o modelo formulado. São desenvolvidos três algoritmos metaheurísticos envolvendo Greed Randomized Adaptative Search, Busca Local e Computação Evolucionária. Um experimento computacional é relatado de forma a avaliar o desempenho dos algositmos de solução desenvolvidos, bem como conclusões são alcançadas. Uma proposta de finalização da pesquisa é apresentada. 

4
  • EVANDO CARLOS PESSINI
  • Certificação de Composições de Serviços Web Semânticos

  • Orientador : MARTIN ALEJANDRO MUSICANTE
  • MEMBROS DA BANCA :
  • MARTIN ALEJANDRO MUSICANTE
  • UMBERTO SOUZA DA COSTA
  • ALBERTO PARDO
  • CLAUDIA MARIA FERNANDES ARAÚJO RIBEIRO
  • MIRIAN HALFELD-FERRARI
  • REGINA MARIA MOTZ CARRANO
  • Data: 29/07/2014

  • Mostrar Resumo
  • Esta tese apresenta um m ́etodo de certificac ̧ ̃ao de composi ̧co ̃es de servi ̧cos web semˆanticos, o qual visa assegurar estaticamente sua corretitude funcional. O m ́etodo de certifica ̧ca ̃o consiste em duas dimenso ̃es de verifica ̧ca ̃o, denominadas base e funcional. A dimensa ̃o base ́e centrada na verifica ̧ca ̃o da corretitude da aplica ̧c ̃ao dos servi ̧cos web semaˆnticos na composi ̧ca ̃o, i.e., visa certificar que as invocac ̧ ̃oes de servic ̧o especificadas na composic ̧ ̃ao esta ̃o em conformidade com as respectivas defini ̧co ̃es dos servic ̧os. A certifica ̧ca ̃o desta dimensa ̃o explora a compatibilidade semˆantica entre os argumentos dados na invoca ̧c ̃ao e os parˆametros formais do servi ̧co web semˆantico. A dimens ̃ao funcional visa certificar que a composi ̧ca ̃o cumpre uma dada especifica ̧c ̃ao expressa na forma de pr ́e- e po ́s-condi ̧co ̃es. Esta dimens ̃ao ́e formalizada atrav ́es de um c ́alculo baseado na l ́ogica de Hoare. Especi- fica ̧co ̃es de corretitude parciais envolvendo composi ̧co ̃es de servi ̧cos web semaˆnticos podem ser derivadas a partir do sistema dedutivo proposto. Este trabalho caracteriza-se tamb ́em por explorar o emprego de um fragmento da lo ́gica descritiva, i.e., ALC, para expressar as especifica ̧co ̃es de corretitude parciais. Como forma de operacionalizar o m ́etodo de certifica ̧ca ̃o, foi desenvolvido um ambiente de suporte para a definic ̧ ̃ao das composic ̧ ̃oes de servi ̧cos web semaˆnticos, assim como os mecanismos necess ́arios para realizar a cer- tifica ̧ca ̃o. O m ́etodo de certifica ̧ca ̃o foi avaliado experimentalmente atrav ́es da aplica ̧ca ̃o em trˆes provas de conceito diferentes. As provas de conceito desenvolvidas possibilitaram avaliar de forma ampla o m ́etodo de certifica ̧ca ̃o proposto. 


  • Mostrar Abstract
  • Esta tese apresenta um m ́etodo de certificac ̧ ̃ao de composi ̧co ̃es de servi ̧cos web semˆanticos, o qual visa assegurar estaticamente sua corretitude funcional. O m ́etodo de certifica ̧ca ̃o consiste em duas dimenso ̃es de verifica ̧ca ̃o, denominadas base e funcional. A dimensa ̃o base ́e centrada na verifica ̧ca ̃o da corretitude da aplica ̧c ̃ao dos servi ̧cos web semaˆnticos na composi ̧ca ̃o, i.e., visa certificar que as invocac ̧ ̃oes de servic ̧o especificadas na composic ̧ ̃ao esta ̃o em conformidade com as respectivas defini ̧co ̃es dos servic ̧os. A certifica ̧ca ̃o desta dimensa ̃o explora a compatibilidade semˆantica entre os argumentos dados na invoca ̧c ̃ao e os parˆametros formais do servi ̧co web semˆantico. A dimens ̃ao funcional visa certificar que a composi ̧ca ̃o cumpre uma dada especifica ̧c ̃ao expressa na forma de pr ́e- e po ́s-condi ̧co ̃es. Esta dimens ̃ao ́e formalizada atrav ́es de um c ́alculo baseado na l ́ogica de Hoare. Especi- fica ̧co ̃es de corretitude parciais envolvendo composi ̧co ̃es de servi ̧cos web semaˆnticos podem ser derivadas a partir do sistema dedutivo proposto. Este trabalho caracteriza-se tamb ́em por explorar o emprego de um fragmento da lo ́gica descritiva, i.e., ALC, para expressar as especifica ̧co ̃es de corretitude parciais. Como forma de operacionalizar o m ́etodo de certifica ̧ca ̃o, foi desenvolvido um ambiente de suporte para a definic ̧ ̃ao das composic ̧ ̃oes de servi ̧cos web semaˆnticos, assim como os mecanismos necess ́arios para realizar a cer- tifica ̧ca ̃o. O m ́etodo de certifica ̧ca ̃o foi avaliado experimentalmente atrav ́es da aplica ̧ca ̃o em trˆes provas de conceito diferentes. As provas de conceito desenvolvidas possibilitaram avaliar de forma ampla o m ́etodo de certifica ̧ca ̃o proposto. 

5
  • DIEGO SILVEIRA COSTA NASCIMENTO
  • Novas Abordagens para Configurações Automáticas dos Parâmetros de Controle em Comitês de
    Classificadores

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • MEMBROS DA BANCA :
  • ANDRÉ CARLOS PONCE DE LEON FERREIRA DE CARVALHO
  • ANDRÉ LUIÍS VASCONCELOS COELHO
  • ANNE MAGALY DE PAULA CANUTO
  • ARAKEN DE MEDEIROS SANTOS
  • BRUNO MOTTA DE CARVALHO
  • Data: 05/12/2014

  • Mostrar Resumo
  • Recentemente, significativos avanços vêm surgindo em pesquisas relacionadas ao tema
    de Comitês de Máquinas. Os modelos que mais recebem atenção na literatura são aqueles de
    natureza estática, ou também conhecidos por ensembles. Dos algoritmos que fazem parte dessa
    classe, destacam-se os métodos que lançam mão das técnicas de reamostragem dos dados de
    treinamento: Bagging, Boosting e Multiboosting. A escolha do tipo de arquitetura e dos componentes
    a serem recrutados não é uma tarefa trivial, e tem motivado, ainda mais, o surgimento
    de novas propostas na tentativa de se construir tais modelos de forma automática, e muitas delas,
    são baseadas em métodos de otimização. Muitas dessas contribuições não têm apresentado
    resultados satisfatórios quando aplicadas a problemas mais complexos ou de natureza distinta.
    Em contrapartida, a Tese aqui apresentada, propõe três novas abordagens híbridas para construção
    automática em ensembles: Incremento de Diversidade, Função de Avaliação Adaptativa e
    Meta-aprendizado para a elaboração de sistemas de configuração automática dos parâmetros de
    controle para os modelos de ensemble. Na primeira abordagem, é proposta uma solução que
    combina diferentes técnicas de diversidade em um único arcabouço conceitual, na tentativa de
    se alcançar níveis mais elevados de diversidade, e com isso, melhor o desempenho de tais sistemas.
    Já na segunda abordagem, é proposta uma nova técnica de avaliação de indivíduos de uma
    população de um algoritmo genético. A contribuição consiste em combinar as técnicas de filtro
    e wrapper de forma adaptativa para evoluir uma melhor distribuição do espaço de atributos a serem
    apresentados aos componentes de um ensemble. E por fim, a última abordagem, que propõe
    uma nova técnica de recomendação de arquitetura e componentes base em ensemble, via técnicas
    de meta-aprendizado tradicional e multirrótulo. De forma geral os resultados são animadores, e
    corroboram com a Tese de que ferramentas híbridas são uma poderosa solução na construção de
    ensembles eficientes em problemas de classificação de padrões.


  • Mostrar Abstract
  • Recentemente, significativos avanços vêm surgindo em pesquisas relacionadas ao tema
    de Comitês de Máquinas. Os modelos que mais recebem atenção na literatura são aqueles de
    natureza estática, ou também conhecidos por ensembles. Dos algoritmos que fazem parte dessa
    classe, destacam-se os métodos que lançam mão das técnicas de reamostragem dos dados de
    treinamento: Bagging, Boosting e Multiboosting. A escolha do tipo de arquitetura e dos componentes
    a serem recrutados não é uma tarefa trivial, e tem motivado, ainda mais, o surgimento
    de novas propostas na tentativa de se construir tais modelos de forma automática, e muitas delas,
    são baseadas em métodos de otimização. Muitas dessas contribuições não têm apresentado
    resultados satisfatórios quando aplicadas a problemas mais complexos ou de natureza distinta.
    Em contrapartida, a Tese aqui apresentada, propõe três novas abordagens híbridas para construção
    automática em ensembles: Incremento de Diversidade, Função de Avaliação Adaptativa e
    Meta-aprendizado para a elaboração de sistemas de configuração automática dos parâmetros de
    controle para os modelos de ensemble. Na primeira abordagem, é proposta uma solução que
    combina diferentes técnicas de diversidade em um único arcabouço conceitual, na tentativa de
    se alcançar níveis mais elevados de diversidade, e com isso, melhor o desempenho de tais sistemas.
    Já na segunda abordagem, é proposta uma nova técnica de avaliação de indivíduos de uma
    população de um algoritmo genético. A contribuição consiste em combinar as técnicas de filtro
    e wrapper de forma adaptativa para evoluir uma melhor distribuição do espaço de atributos a serem
    apresentados aos componentes de um ensemble. E por fim, a última abordagem, que propõe
    uma nova técnica de recomendação de arquitetura e componentes base em ensemble, via técnicas
    de meta-aprendizado tradicional e multirrótulo. De forma geral os resultados são animadores, e
    corroboram com a Tese de que ferramentas híbridas são uma poderosa solução na construção de
    ensembles eficientes em problemas de classificação de padrões.

6
  • ISAAC DE LIMA OLIVEIRA FILHO
  • Algoritmo Papílio como Método de Proteção de Templates para Aumentar a Segurança em Sistemas de Identificação Biométricos

  • Orientador : BENJAMIN RENE CALLEJAS BEDREGAL
  • MEMBROS DA BANCA :
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • ANNE MAGALY DE PAULA CANUTO
  • MARJORY CRISTIANY DA COSTA ABREU
  • LUIS MENASCHE SCHECHTER
  • WILLIAM ROBSON SCHWARTZ
  • Data: 12/12/2014

  • Mostrar Resumo
  • No processo de autenticação/identificação de usuários, existem modelos que podem utilizar senhas, chaves, identificadores pessoal (cartões, tags etc) para autenticar um determinado usuário. No entanto, existem outros sistemas que utilizam características biométricas, por exemplo, assinatura, impressão digital, voz, etc, para a mesma finalidade. Contudo, o armazenamento das biometrias pode trazer riscos quanto a consistência e proteção destes dados. Diante deste problema, surge a necessidade de proteger estes bancos de dados biométricos para garantir a integridade e confiabilidade do sistema. Atualmente, existem dentre vários, dois modelos conhecidos como Fuzzy Commitment e Fuzzy Vault, utilizados na maioria dos processos de proteção de dados biométricos para sistemas de autenticação, porém os mesmos apresentam elementos frágeis no processo de proteção. Logo, melhorar o nível de segurança deste métodos, através de modificações na estrutura, ou mesmo através da inserção de novas camadas de proteção trata-se de um dos objetivos desta tese. Este trabalho, propõe a utilização simultânea de criptografia (Algoritmo de Criptografia Papílio) com os modelos de proteção de templates (Fuzzy Vault e Fuzzy Commitment) em sistemas de identificação baseados em biometria. O objetivo deste trabalho é melhorar dois aspectos em sistemas baseados em biometria: a segurança e precisão. Além disso, é necessário manter um nível razoável de eficiência destes dados através do uso de estruturas de classificação mais elaborados, conhecidos como comitês. Isto é, pretende-se propor um novo modelo de sistemas de identificação biométrico e através de um comparativo com os modelos originais Fuzzy Vault e Fuzzy Commitment, verificar a melhora apresentada na performance quanto a autenticação e a proteção dos dados biométricos.


  • Mostrar Abstract
  • No processo de autenticação/identificação de usuários, existem modelos que podem utilizar senhas, chaves, identificadores pessoal (cartões, tags etc) para autenticar um determinado usuário. No entanto, existem outros sistemas que utilizam características biométricas, por exemplo, assinatura, impressão digital, voz, etc, para a mesma finalidade. Contudo, o armazenamento das biometrias pode trazer riscos quanto a consistência e proteção destes dados. Diante deste problema, surge a necessidade de proteger estes bancos de dados biométricos para garantir a integridade e confiabilidade do sistema. Atualmente, existem dentre vários, dois modelos conhecidos como Fuzzy Commitment e Fuzzy Vault, utilizados na maioria dos processos de proteção de dados biométricos para sistemas de autenticação, porém os mesmos apresentam elementos frágeis no processo de proteção. Logo, melhorar o nível de segurança deste métodos, através de modificações na estrutura, ou mesmo através da inserção de novas camadas de proteção trata-se de um dos objetivos desta tese. Este trabalho, propõe a utilização simultânea de criptografia (Algoritmo de Criptografia Papílio) com os modelos de proteção de templates (Fuzzy Vault e Fuzzy Commitment) em sistemas de identificação baseados em biometria. O objetivo deste trabalho é melhorar dois aspectos em sistemas baseados em biometria: a segurança e precisão. Além disso, é necessário manter um nível razoável de eficiência destes dados através do uso de estruturas de classificação mais elaborados, conhecidos como comitês. Isto é, pretende-se propor um novo modelo de sistemas de identificação biométrico e através de um comparativo com os modelos originais Fuzzy Vault e Fuzzy Commitment, verificar a melhora apresentada na performance quanto a autenticação e a proteção dos dados biométricos.

2013
Dissertações
1
  • EVERTON RANIELLY DE SOUSA CAVALCANTE
  • Cloud Integrator: Uma Plataforma para Composição de Serviços em Ambientes de Computação em Nuvem

     


  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • NELIO ALESSANDRO AZEVEDO CACHO
  • NOEMI DE LA ROCQUE RODRIGUEZ
  • THAIS VASCONCELOS BATISTA
  • Data: 31/01/2013

  • Mostrar Resumo
  • Com o avanço do paradigma de Computação em Nuvem, um único serviço oferecido por uma plataforma de nuvem pode não ser suficiente para satisfazer todos os requisitos da aplicação. Para satisfazer tais requisitos, ao invés de um único serviço, pode ser necessária uma composição que agrega serviços providos por diferentes plataformas de nuvem. A fim de gerar valor agregado para o usuário, essa composição de serviços providos por diferentes plataformas de Computação em Nuvem requer uma solução em termos de integração de plataformas, o que envolve a manipulação de um vasto número de APIs e protocolos não interoperáveis de diferentes provedores. Nesse cenário, este trabalho apresenta o Cloud Integrator, uma plataforma de middleware para composição de serviços providos por diferentes plataformas de Computação em Nuvem que é baseada em SOA (Service-Oriented Architecture) e workflows semânticos, integrando serviços de nuvem de modo transparente e automático. Além de prover um ambiente que facilita o desenvolvimento e a execução de aplicações que utilizam esse tipo de serviço, o Cloud Integrator funciona como um mediador provendo mecanismos para a construção de aplicações através da composição automática e seleção de serviços Web semânticos que consideram metadados acerca dos serviços, como QoS (Quality of Service), preços etc. Neste trabalho, através de estudos de caso de aplicações que utilizam serviços providos por diferentes plataformas de nuvem, a plataforma é avaliada em duas perspectivas, uma quantitativa, que visa endereçar a eficiência dos processos de composição e seleção de serviços realizados e também verificar o desempenho da plataforma, e uma qualitativa, que visa ressaltar os benefícios do uso do Cloud Integrator em cenários de nuvens computacionais heterogêneas.


  • Mostrar Abstract
  • Com o avanço do paradigma de Computação em Nuvem, um único serviço oferecido por uma plataforma de nuvem pode não ser suficiente para satisfazer todos os requisitos da aplicação. Para satisfazer tais requisitos, ao invés de um único serviço, pode ser necessária uma composição que agrega serviços providos por diferentes plataformas de nuvem. A fim de gerar valor agregado para o usuário, essa composição de serviços providos por diferentes plataformas de Computação em Nuvem requer uma solução em termos de integração de plataformas, o que envolve a manipulação de um vasto número de APIs e protocolos não interoperáveis de diferentes provedores. Nesse cenário, este trabalho apresenta o Cloud Integrator, uma plataforma de middleware para composição de serviços providos por diferentes plataformas de Computação em Nuvem que é baseada em SOA (Service-Oriented Architecture) e workflows semânticos, integrando serviços de nuvem de modo transparente e automático. Além de prover um ambiente que facilita o desenvolvimento e a execução de aplicações que utilizam esse tipo de serviço, o Cloud Integrator funciona como um mediador provendo mecanismos para a construção de aplicações através da composição automática e seleção de serviços Web semânticos que consideram metadados acerca dos serviços, como QoS (Quality of Service), preços etc. Neste trabalho, através de estudos de caso de aplicações que utilizam serviços providos por diferentes plataformas de nuvem, a plataforma é avaliada em duas perspectivas, uma quantitativa, que visa endereçar a eficiência dos processos de composição e seleção de serviços realizados e também verificar o desempenho da plataforma, e uma qualitativa, que visa ressaltar os benefícios do uso do Cloud Integrator em cenários de nuvens computacionais heterogêneas.

2
  • DANIEL AGUIAR DA SILVA OLIVEIRA CARVALHO
  •  

    Uma Máquina de Redução de Grafos para Serviços Web

  • Orientador : MARTIN ALEJANDRO MUSICANTE
  • MEMBROS DA BANCA :
  • MARTIN ALEJANDRO MUSICANTE
  • UMBERTO SOUZA DA COSTA
  • ALBERTO PARDO
  • ANDRÉ LUÍS DE MEDEIROS SANTOS
  • Data: 31/01/2013

  • Mostrar Resumo
  • Serviços web são software acessíveis através

    da Internet que disponibilizam funcionalidades às aplicações.

    Hoje, é natural reutilizar serviços de terceiros para compor

    novos serviços. Este processo de composição pode acontecer

    em dois estilos, denominados orquestração e a coreografia. A

    coreografia representa uma colaboração entre serviços

    os quais conhecem a aplicação a que pertencem e o momento

    exato para executarem. Já a orquestração possui um

    processo central, o orquestrador, que coordena todas as

    operações da aplicação. É neste contexto que este trabalho

    se encaixa, propondo um modelo abstrato para a execução de

    orquestrações de serviços. Com esta finalidade, será definida

    uma máquina de redução de grafos para a implementação de

    orquestrações de serviços especificadas em uma variante da

    linguagem de composição PEWS. Ademais, um protótipo desta

    máquina (em Java) será construído como prova de conceito.


  • Mostrar Abstract
  • Serviços web são software acessíveis através

    da Internet que disponibilizam funcionalidades às aplicações.

    Hoje, é natural reutilizar serviços de terceiros para compor

    novos serviços. Este processo de composição pode acontecer

    em dois estilos, denominados orquestração e a coreografia. A

    coreografia representa uma colaboração entre serviços

    os quais conhecem a aplicação a que pertencem e o momento

    exato para executarem. Já a orquestração possui um

    processo central, o orquestrador, que coordena todas as

    operações da aplicação. É neste contexto que este trabalho

    se encaixa, propondo um modelo abstrato para a execução de

    orquestrações de serviços. Com esta finalidade, será definida

    uma máquina de redução de grafos para a implementação de

    orquestrações de serviços especificadas em uma variante da

    linguagem de composição PEWS. Ademais, um protótipo desta

    máquina (em Java) será construído como prova de conceito.

3
  • ROMERITO CAMPOS DE ANDRADE
  • Algoritmos metaheurísticos na solução do Multicast Packing Problem Abordagem Multiobjetivo

  • Orientador : MARCO CESAR GOLDBARG
  • MEMBROS DA BANCA :
  • ANTONIO CARLOS GAY THOME
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MARCO CESAR GOLDBARG
  • Data: 01/02/2013

  • Mostrar Resumo
  • O presente trabalho discute o problema de otimização combinatória intitulado comomul-ticast packing problem. O problema consiste em acomodar várias comunicações multicastem uma mesma rede com intuito de otimizar os recursos disponíveis. Inicialmente fez-se uma re-visão de literatura do problema em questão, tal revisão teve como foco verificar as técnicas de solução empregadas, como também os modelos matemáticos que foram utilizadas. Em seguida, definiu-se um modelo matemático com base na abordagem multi-objetivo tendo em vista as características do problema, levando em consideração que alguns objetivos de otimização que caracterizam o problema apresentamtrade-off. Não há registro na literatura acerca da aplicação de técnicas de otimização multi-objetivo para o problema mencionado. Através da revisão de literatura obteve-se os meios de geração de instâncias usados na literatura, como também suas características. Como complemento do trabalho foram propostos vários algoritmos que englo-bam criação de soluções e algoritmos de recombinação de soluções através do uso decrosso-ver, estes algoritmos foram utilizados em conjunto com o framework PISA que fornece várias ferramentas de otimização multi-objetivo como os algoritmos NSGA-II e SPEA-II. A análise experimental foi conduzida com base em testes estatísticas utilizando orankde dominância e os indicadores de qualidadeHypervolumee oEpslonaditivo. Ao final dos experimentos tem-se dois algoritmos (um NSGA-II e um SPEA-II), os quais são comparados para verificar qual é melhor. O resultado dos testes estatíticos não permitem afirma qual das duas melhores versões é melhor que a outra. Por fim, tem-se a proposta para a dissertação


  • Mostrar Abstract
  • O presente trabalho discute o problema de otimização combinatória intitulado comomul-ticast packing problem. O problema consiste em acomodar várias comunicações multicastem uma mesma rede com intuito de otimizar os recursos disponíveis. Inicialmente fez-se uma re-visão de literatura do problema em questão, tal revisão teve como foco verificar as técnicas de solução empregadas, como também os modelos matemáticos que foram utilizadas. Em seguida, definiu-se um modelo matemático com base na abordagem multi-objetivo tendo em vista as características do problema, levando em consideração que alguns objetivos de otimização que caracterizam o problema apresentamtrade-off. Não há registro na literatura acerca da aplicação de técnicas de otimização multi-objetivo para o problema mencionado. Através da revisão de literatura obteve-se os meios de geração de instâncias usados na literatura, como também suas características. Como complemento do trabalho foram propostos vários algoritmos que englo-bam criação de soluções e algoritmos de recombinação de soluções através do uso decrosso-ver, estes algoritmos foram utilizados em conjunto com o framework PISA que fornece várias ferramentas de otimização multi-objetivo como os algoritmos NSGA-II e SPEA-II. A análise experimental foi conduzida com base em testes estatísticas utilizando orankde dominância e os indicadores de qualidadeHypervolumee oEpslonaditivo. Ao final dos experimentos tem-se dois algoritmos (um NSGA-II e um SPEA-II), os quais são comparados para verificar qual é melhor. O resultado dos testes estatíticos não permitem afirma qual das duas melhores versões é melhor que a outra. Por fim, tem-se a proposta para a dissertação

4
  • DANIEL ALENCAR DA COSTA
  • Avaliação da Contribuição de Desenvolvedores para Projetos de Software usando Mineração de Repositórios de Software e Mineração de Processos

  • Orientador : UIRA KULESZA
  • MEMBROS DA BANCA :
  • UIRA KULESZA
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • GIBEON SOARES DE AQUINO JUNIOR
  • FERNANDO MARQUES FIGUEIRA FILHO
  • CHRISTINA VON FLACH GARCIA CHAVEZ
  • Data: 01/02/2013

  • Mostrar Resumo
  • Mineração de Repositórios de Software (MSR) é uma área que busca analisar repositórios de software em busca de informações relevantes para a pesquisa e para a prática na engenharia de software. As minerações buscam transformar informações estáticas de repositórios de software (sistemas de gerência de configuração e mudanças) em informações relevantes que auxiliam a tomada de decisão dentro do contexto de projetos de software. Por outro lado, a área de Mineração de Processos (MP) busca descobrir características dos processos que são utilizados em organizações para auxiliar na melhoria e documentação destes processos. Trabalhos recentes têm buscado utilizar as técnicas de MSR e de MP para realizar diversas análises na área de Engenharia de Software, tais como: (i) estudar a evolução dos projetos de software (ii) entender o processo de software real utilizado em um determinado projeto; e (iii) criar modelos de predições de defeitos. Contudo, poucos destes trabalhos buscam utilizar as técnicas de MP e MSR com o objetivo de analisar a contribuição de desenvolvedores na implementação de sistemas de software. Esta dissertação de mestrado propõe a condução de estudos experimentais que buscam avaliar a contribuição de desenvolvedores de software para projetos, através da utilização das técnicas de MSR e MP. A qualidade da contribuição dos desenvolvedores são avaliadas sob três diferentes perspectivas: (i) commits defeituosos; (ii) commits complexos; e (iii) resolução de bugs prioritários. Um projeto open-source e um projeto de uma empresa privada são avaliados através do uso das técnicas de mineração investigadas.


  • Mostrar Abstract
  • Mineração de Repositórios de Software (MSR) é uma área que busca analisar repositórios de software em busca de informações relevantes para a pesquisa e para a prática na engenharia de software. As minerações buscam transformar informações estáticas de repositórios de software (sistemas de gerência de configuração e mudanças) em informações relevantes que auxiliam a tomada de decisão dentro do contexto de projetos de software. Por outro lado, a área de Mineração de Processos (MP) busca descobrir características dos processos que são utilizados em organizações para auxiliar na melhoria e documentação destes processos. Trabalhos recentes têm buscado utilizar as técnicas de MSR e de MP para realizar diversas análises na área de Engenharia de Software, tais como: (i) estudar a evolução dos projetos de software (ii) entender o processo de software real utilizado em um determinado projeto; e (iii) criar modelos de predições de defeitos. Contudo, poucos destes trabalhos buscam utilizar as técnicas de MP e MSR com o objetivo de analisar a contribuição de desenvolvedores na implementação de sistemas de software. Esta dissertação de mestrado propõe a condução de estudos experimentais que buscam avaliar a contribuição de desenvolvedores de software para projetos, através da utilização das técnicas de MSR e MP. A qualidade da contribuição dos desenvolvedores são avaliadas sob três diferentes perspectivas: (i) commits defeituosos; (ii) commits complexos; e (iii) resolução de bugs prioritários. Um projeto open-source e um projeto de uma empresa privada são avaliados através do uso das técnicas de mineração investigadas.

5
  • RICARDO JOSE SALES JUNIOR
  • UMA ABORDAGEM PARA VERIFICAÇÃO DO COMPORTAMENTO EXCEPCIONAL A PARTIR
    DE REGRAS DE DESIGN E TESTES

  • Orientador : ROBERTA DE SOUZA COELHO
  • MEMBROS DA BANCA :
  • ROBERTA DE SOUZA COELHO
  • NELIO ALESSANDRO AZEVEDO CACHO
  • FERNANDO JOSÉ CASTOR DE LIMA FILHO
  • Data: 01/02/2013

  • Mostrar Resumo
  • Verificar a conformidade entre a implementação de um sistema e suas regras de design é uma atividade importante para tentar garantir a qualidade da arquitetura e do código-fonte. Especialmente no caso de sistemas dos quais se exige um alto nível de confiabilidade é importante definir regras de design (design rules) específicas para o comportamento excepcional. Tais regras descrevem como as exceções devem fluir através do sistema definindo quais são os elementos responsáveis por capturar as exceções lançadas por outros elementos do sistema. Entretanto, as abordagens atuais para verificar automaticamente regras de design não provêem mecanismos adequados para definir e verificar regras de design específicas para a política de tratamento de exceções das aplicações. Este trabalho propõe uma abordagem prática para preservar o comportamento excepcional de uma aplicação ou família de aplicações, baseada na definição e verificação automática em tempo de execução de regras de design de tratamento de exceção para sistemas desenvolvidos em Java ou AspectJ. Para apoiar esta abordagem foi desenvolvida, no contexto deste trabalho, uma ferramenta chamada VITTAE (Verification and Information Tool to Analyze Exceptions) que estende o framework JUnit e permite automatizar atividades do teste de regras de design excepcionais. Foi realizado um estudo de caso preliminar com o objetivo de avaliar a eficácia da abordagem proposta sobre uma linha de produto de software.  Além deste foi realizado um experimento cujo objetivo foi realizar uma análise comparativa entre a abordagem proposta e uma chamada ferramenta JUnitE, que também propõe testar o código de tratamento de exceções utilizando testes JUnit. Os resultados mostraram que a VITTAE pode auxiliar na detecção de defeitos no código de tratamento de exceção, e mostrar como as regras de desing excepcionais evoluem ao longo de diferentes versões de um sistema.


  • Mostrar Abstract
  • Verificar a conformidade entre a implementação de um sistema e suas regras de design é uma atividade importante para tentar garantir a qualidade da arquitetura e do código-fonte. Especialmente no caso de sistemas dos quais se exige um alto nível de confiabilidade é importante definir regras de design (design rules) específicas para o comportamento excepcional. Tais regras descrevem como as exceções devem fluir através do sistema definindo quais são os elementos responsáveis por capturar as exceções lançadas por outros elementos do sistema. Entretanto, as abordagens atuais para verificar automaticamente regras de design não provêem mecanismos adequados para definir e verificar regras de design específicas para a política de tratamento de exceções das aplicações. Este trabalho propõe uma abordagem prática para preservar o comportamento excepcional de uma aplicação ou família de aplicações, baseada na definição e verificação automática em tempo de execução de regras de design de tratamento de exceção para sistemas desenvolvidos em Java ou AspectJ. Para apoiar esta abordagem foi desenvolvida, no contexto deste trabalho, uma ferramenta chamada VITTAE (Verification and Information Tool to Analyze Exceptions) que estende o framework JUnit e permite automatizar atividades do teste de regras de design excepcionais. Foi realizado um estudo de caso preliminar com o objetivo de avaliar a eficácia da abordagem proposta sobre uma linha de produto de software.  Além deste foi realizado um experimento cujo objetivo foi realizar uma análise comparativa entre a abordagem proposta e uma chamada ferramenta JUnitE, que também propõe testar o código de tratamento de exceções utilizando testes JUnit. Os resultados mostraram que a VITTAE pode auxiliar na detecção de defeitos no código de tratamento de exceção, e mostrar como as regras de desing excepcionais evoluem ao longo de diferentes versões de um sistema.

6
  • CAMILA NASCIMENTO DE OLIVEIRA TAUMATURGO
  • Uma Investigação de Algoritmos Exatos e Metaheurísticos Aplicados ao Nonograma

  • Orientador : ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MEMBROS DA BANCA :
  • ANTONIO CARLOS GAY THOME
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • ILONEIDE CARLOS DE OLIVEIRA RAMOS
  • MARCO CESAR GOLDBARG
  • Data: 01/02/2013

  • Mostrar Resumo
  • O Nonograma é um jogo lógico cujo problema de decisão associado é NP-completo. Ele possui aplicação em problemas de identificação de padrões e de compactação de dados, dentre outros. O jogo consiste em determinar uma alocação de cores em pixels distribuídos em uma matriz nXm atendendo restrições em linhas e colunas. Um Nonograma é codificado através de vetores cujos elementos especificam o número de pixels existentes em cada coluna e linha de uma figura, sem especificar suas coordenadas. Este trabalho apresenta abordagens exatas e heurísticas para resolver o Nonograma. A Busca em Profundidade foi uma das abordagens escolhidas por ser um exemplo típico de algoritmo força bruta de fácil implementação. Outra abordagem exata implementada foi um algoritmo de Las Vegas, através do qual se pretende investigar se a aleatoriedade introduzida na Busca em Profundidade traria algum benefício para a solução do problema. O Nonograma também é modelado como um Problema de Satisfação de Restrições e resolvido com um solver. Três abordagens heurísticas são propostas: uma Busca Tabu e dois Algoritmos Meméticos. As abordagens são testadas em diversos casos testes, com o tamanho variando de 8 x 8 a 100 x 100, o que inclui Nonogramas lógicos e aleatórios.


  • Mostrar Abstract
  • O Nonograma é um jogo lógico cujo problema de decisão associado é NP-completo. Ele possui aplicação em problemas de identificação de padrões e de compactação de dados, dentre outros. O jogo consiste em determinar uma alocação de cores em pixels distribuídos em uma matriz nXm atendendo restrições em linhas e colunas. Um Nonograma é codificado através de vetores cujos elementos especificam o número de pixels existentes em cada coluna e linha de uma figura, sem especificar suas coordenadas. Este trabalho apresenta abordagens exatas e heurísticas para resolver o Nonograma. A Busca em Profundidade foi uma das abordagens escolhidas por ser um exemplo típico de algoritmo força bruta de fácil implementação. Outra abordagem exata implementada foi um algoritmo de Las Vegas, através do qual se pretende investigar se a aleatoriedade introduzida na Busca em Profundidade traria algum benefício para a solução do problema. O Nonograma também é modelado como um Problema de Satisfação de Restrições e resolvido com um solver. Três abordagens heurísticas são propostas: uma Busca Tabu e dois Algoritmos Meméticos. As abordagens são testadas em diversos casos testes, com o tamanho variando de 8 x 8 a 100 x 100, o que inclui Nonogramas lógicos e aleatórios.

7
  • MAIRA DE FARIA BARROS MEDEIROS ANDRADE
  • Identificando Interesses Transversais em Modelos de Requisitos PL-AOVgraph

  • Orientador : LYRENE FERNANDES DA SILVA
  • MEMBROS DA BANCA :
  • LYRENE FERNANDES DA SILVA
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • JULIO CESAR SAMPAIO DO PRADO LEITE
  • Data: 04/02/2013

  • Mostrar Resumo
  • A ocorrência de problemas relacionados aos fenômenos de espalhamento e entrelaçamento é cada vez mais frequente. Uma tentativa de resolver este problema está relacionada à identificação de interesses transversais. Para maximizar seus benefícios, a identificação deve ser realizada nas etapas iniciais do processo de desenvolvimento, porém alguns trabalhos relatam que isto não tem sido feito na maioria dos casos. Tornando, dessa forma, o desenvolvimento do sistema suscetível à ocorrência de erros e propensos à refatorações em fases posteriores o que afeta diretamente à qualidade e o custo do sistema. Diante disso, esse trabalho propõe um método de identificação de interesses transversais em especificações de requisitos escritas em PL-AOVgraph. Além disso, esse trabalho propõe uma evolução para a ferramenta ReqSys-MDD que consiste em semi-automatizar o método de identificação.


  • Mostrar Abstract
  • A ocorrência de problemas relacionados aos fenômenos de espalhamento e entrelaçamento é cada vez mais frequente. Uma tentativa de resolver este problema está relacionada à identificação de interesses transversais. Para maximizar seus benefícios, a identificação deve ser realizada nas etapas iniciais do processo de desenvolvimento, porém alguns trabalhos relatam que isto não tem sido feito na maioria dos casos. Tornando, dessa forma, o desenvolvimento do sistema suscetível à ocorrência de erros e propensos à refatorações em fases posteriores o que afeta diretamente à qualidade e o custo do sistema. Diante disso, esse trabalho propõe um método de identificação de interesses transversais em especificações de requisitos escritas em PL-AOVgraph. Além disso, esse trabalho propõe uma evolução para a ferramenta ReqSys-MDD que consiste em semi-automatizar o método de identificação.

8
  • LARISSA DE ALENCAR SOBRAL
  • GT4CCI: Uma Abordagem Baseada em Grounded Theory para a Identificação de Interesses Transversais em Documentos de Requisitos

  • Orientador : LYRENE FERNANDES DA SILVA
  • MEMBROS DA BANCA :
  • JULIO CESAR SAMPAIO DO PRADO LEITE
  • LYRENE FERNANDES DA SILVA
  • THAIS VASCONCELOS BATISTA
  • Data: 05/02/2013

  • Mostrar Resumo
  • Um ponto considerado bastante relevante para uma boa modularização de software é a identificação de interesses transversais, inclusive nas etapas iniciais do processo de desenvolvimento. Quando esta identificação é realizada desde o princípio do desenvolvimento, há ganhos em termos de qualidade, custo e eficiência durante todo o ciclo de vida do software em desenvolvimento. Entretanto, apesar de haver vantagens, as abordagens até hoje desenvolvidas com o intuito de proceder a identificação de interesses transversais em nível de requisitos possuem diversas limitações. Levando isto em consideração, este trabalho propõe uma técnica, baseada nos princípios de Grounded Theory, para a identificação de interesses transversais ainda no documento de requisitos desenvolvido para um dadosoftware. Esta técnica visa facilitar o entendimento e documentação destes interesses ao longo do processo de desenvolvimento, além de adicionar ganhos à todo o ciclo de vida do software, uma vez que busca solucionar, ou ao menos amenizar, algumas das limitações identificadas nas abordagens apresentadas pela literatura.


  • Mostrar Abstract
  • Um ponto considerado bastante relevante para uma boa modularização de software é a identificação de interesses transversais, inclusive nas etapas iniciais do processo de desenvolvimento. Quando esta identificação é realizada desde o princípio do desenvolvimento, há ganhos em termos de qualidade, custo e eficiência durante todo o ciclo de vida do software em desenvolvimento. Entretanto, apesar de haver vantagens, as abordagens até hoje desenvolvidas com o intuito de proceder a identificação de interesses transversais em nível de requisitos possuem diversas limitações. Levando isto em consideração, este trabalho propõe uma técnica, baseada nos princípios de Grounded Theory, para a identificação de interesses transversais ainda no documento de requisitos desenvolvido para um dadosoftware. Esta técnica visa facilitar o entendimento e documentação destes interesses ao longo do processo de desenvolvimento, além de adicionar ganhos à todo o ciclo de vida do software, uma vez que busca solucionar, ou ao menos amenizar, algumas das limitações identificadas nas abordagens apresentadas pela literatura.

9
  • MARCELO DE BARROS BARBOSA
  • EUPAT for WoW: Uma Ferramenta de Assistência à Programação por Usuário Final

  • Orientador : JAIR CAVALCANTI LEITE
  • MEMBROS DA BANCA :
  • JAIR CAVALCANTI LEITE
  • LEONARDO CUNHA DE MIRANDA
  • SIMONE DINIZ JUNQUEIRA BARBOSA
  • Data: 20/02/2013

  • Mostrar Resumo
  • Neste trabalho, apresentamos uma ferramenta cujo intuito é auxiliar não-programadores, jogadores de videogame, na criação de extensões na forma de Add-ons para o World of Warcraft, o jogo online. Nele, o usuário pode criar extensões customizando completamente sua interface, de forma a reinventar a sua experiência de jogo e melhorar sua jogabilidade. A criação de extensões para aplicativos e jogos surgiu da crescente necessidade de fornecer aos usuários mecanismos eficientes de Programação por Usuário Final, permitindo que os mesmos preenchessem suas necessidades singulares através da criação, customização e especificação de extensões em software. Em World of Warcraft mais especificamente, os Add-ons exploram um tipo de extensão na qual os jogadores passam a programar sua própria interface de usuário ou a fazer uso de interfaces criadas por outros usuários. No entanto, realizar a programação dessas extensões - os Add-ons - não é uma tarefa fácil. Dentro deste contexto, desenvolvemos a ferramenta EUPAT for WoW (do inglês, End-User Programming Assistance Tool for World of Warcraft) que oferece assistência à criação de Add-ons. Além disso, investigamos como usuários jogadores com e sem conhecimento de programação são beneficiados. Os resultados desta pesquisa permitiram refletir sobre as estratégias de assistência de programação por usuário final no contexto de jogos.


  • Mostrar Abstract
  • Neste trabalho, apresentamos uma ferramenta cujo intuito é auxiliar não-programadores, jogadores de videogame, na criação de extensões na forma de Add-ons para o World of Warcraft, o jogo online. Nele, o usuário pode criar extensões customizando completamente sua interface, de forma a reinventar a sua experiência de jogo e melhorar sua jogabilidade. A criação de extensões para aplicativos e jogos surgiu da crescente necessidade de fornecer aos usuários mecanismos eficientes de Programação por Usuário Final, permitindo que os mesmos preenchessem suas necessidades singulares através da criação, customização e especificação de extensões em software. Em World of Warcraft mais especificamente, os Add-ons exploram um tipo de extensão na qual os jogadores passam a programar sua própria interface de usuário ou a fazer uso de interfaces criadas por outros usuários. No entanto, realizar a programação dessas extensões - os Add-ons - não é uma tarefa fácil. Dentro deste contexto, desenvolvemos a ferramenta EUPAT for WoW (do inglês, End-User Programming Assistance Tool for World of Warcraft) que oferece assistência à criação de Add-ons. Além disso, investigamos como usuários jogadores com e sem conhecimento de programação são beneficiados. Os resultados desta pesquisa permitiram refletir sobre as estratégias de assistência de programação por usuário final no contexto de jogos.

10
  • ALINE DE OLIVEIRA PRATA JAQUEIRA
  • Uso de Modelos i* para Enriquecer Requisitos em Métodos Ágeis

  • Orientador : MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • MEMBROS DA BANCA :
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • FERNANDA MARIA RIBEIRO DE ALENCAR
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • Data: 01/03/2013

  • Mostrar Resumo
  • A atividade de engenharia de requisitos é vista nos métodos ágeis como atividade burocrática tornando o processo menos ágil. No entanto, a falta de documentação no ambiente de desenvolvimento ágil é apontada como um dos principais desafios da metodologia. Assim, observa-se a existência de um contrassenso entre o que a metodologia ágil defende e o resultado que ocorre no ambiente real. Por exemplo, nos métodos ágeis as histórias de usuário são a forma mais usual para descrever requisitos. No entanto, essa maneira de descrever requisitos ainda não é suficiente, pois o papel dos cartões de história de usuário e a parede onde são fixados constituem artefatos muito vulneráveis e restritos para representar e detalhar os requisitos. As atividades de verificar questões como o rastreamento do progresso do software e dependências entre as histórias também são limitadas com o uso somente dos cartões. No contexto de engenharia de requisitos existem as abordagens orientadas a metas que trazem vantagens para a documentação de requisitos, entre elas, completude dos requisitos, análise de alternativas e suporte à racionalização de requisitos. Dentre essas abordagens destaca-se a técnica de modelagem i* que fornece uma visão gráfica dos atores envolvidos no sistema e suas dependências. Esta dissertação se insere no contexto de propor um recurso complementar que visa diminuir essa carência de documentação existente nos métodos ágeis. Assim, o objetivo deste trabalho é fornecer uma visão gráfica dos requisitos do software e seus relacionamentos através de modelos i*, enriquecendo assim os requisitos nos métodos ágeis. Para isso propõe-se um conjunto de heurísticas para realizar o mapeamento dos requisitos apresentados como histórias de usuário em modelos i*.  Esse mapeamento poderá ser utilizado como uma forma de documentação dos requisitos no ambiente ágil, pois através do mapeamento para os modelos i*, os requisitos serão visualizados de maneira mais abrangente e com seus devidos relacionamentos de acordo com o ambiente de negócio que vão atender.


  • Mostrar Abstract
  • A atividade de engenharia de requisitos é vista nos métodos ágeis como atividade burocrática tornando o processo menos ágil. No entanto, a falta de documentação no ambiente de desenvolvimento ágil é apontada como um dos principais desafios da metodologia. Assim, observa-se a existência de um contrassenso entre o que a metodologia ágil defende e o resultado que ocorre no ambiente real. Por exemplo, nos métodos ágeis as histórias de usuário são a forma mais usual para descrever requisitos. No entanto, essa maneira de descrever requisitos ainda não é suficiente, pois o papel dos cartões de história de usuário e a parede onde são fixados constituem artefatos muito vulneráveis e restritos para representar e detalhar os requisitos. As atividades de verificar questões como o rastreamento do progresso do software e dependências entre as histórias também são limitadas com o uso somente dos cartões. No contexto de engenharia de requisitos existem as abordagens orientadas a metas que trazem vantagens para a documentação de requisitos, entre elas, completude dos requisitos, análise de alternativas e suporte à racionalização de requisitos. Dentre essas abordagens destaca-se a técnica de modelagem i* que fornece uma visão gráfica dos atores envolvidos no sistema e suas dependências. Esta dissertação se insere no contexto de propor um recurso complementar que visa diminuir essa carência de documentação existente nos métodos ágeis. Assim, o objetivo deste trabalho é fornecer uma visão gráfica dos requisitos do software e seus relacionamentos através de modelos i*, enriquecendo assim os requisitos nos métodos ágeis. Para isso propõe-se um conjunto de heurísticas para realizar o mapeamento dos requisitos apresentados como histórias de usuário em modelos i*.  Esse mapeamento poderá ser utilizado como uma forma de documentação dos requisitos no ambiente ágil, pois através do mapeamento para os modelos i*, os requisitos serão visualizados de maneira mais abrangente e com seus devidos relacionamentos de acordo com o ambiente de negócio que vão atender.

11
  • WELLINGTON ALEXANDRE FERNANDES
  • SISTEMA DE APOIO À INTERATIVIDADE EM REVISÕES SISTEMÁTICAS EM ENGENHARIA DE SOFTWARE

  • Orientador : EDUARDO HENRIQUE DA SILVA ARANHA
  • MEMBROS DA BANCA :
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • GIBEON SOARES DE AQUINO JUNIOR
  • SÉRGIO CASTELO BRANCO SOARES
  • Data: 04/03/2013

  • Mostrar Resumo
  • A colaboração na pesquisa é uma das tarefas centrais da área acadêmica. Atualmente, muitos pesquisadores estão utilizando meios modernos de troca de arquivos digitais através de ferramentas assíncronas e também com o uso de ferramentas mais sofisticadas, do tipo síncronas. Juntamente com o fato da crescente quantidade de artigos sendo gerados, mais complexos, diversificados e aumentando de forma desorganizada, o que trás ao pesquisador uma tarefa difícil para organizá-los de forma a se extrair o melhor conteúdo destes, isto ocorre porque uma subárea da Engenharia de Software (ES) ainda é bastante mal aproveitada, a Engenharia de Software Experimental (ESE). Utilizando-se de um dos tipos de experimentos que a

    ESE oferece, as revisões sistemáticas entram como uma solução bastante robusta, na qual o pesquisador pode identificar o conhecimento existente em uma área e planejar devidamente sua pesquisa, evitando a repetição de erros em pesquisas já efetivadas por
    outros pesquisadores no passado. Contudo, estas duas abordagens, a colaboração virtual de pesquisadores e a utilização de revisões sistemáticas, contem problemas: na primeira, sistemas colaborativos são geralmente difíceis de configurar e usar; na segunda, apesar
    da robustez da metodologia de revisões sistemáticas, ainda se torna necessário uma rigorosa revisão na literatura para se conseguir um resultado satisfatório. 
     
    Assim, com o foco de unir estas duas abordagens, este trabalho propõe uma maneira de produzir revisões sistemáticas de forma organizada e com a possibilidade de interação entre usuários, com o desenvolvimento de um sistema interativo, no qual as revisões sistemáticas possam ser geradas por usuários em colaboração com outros e também ser avaliadas seguindo a orientação de um profissional da área, tornando o seu conteúdo mais consistente e de melhor qualidade. O sistema não possui níveis de acesso, ou seja,
    qualquer pessoa pode se cadastrar e usufruir de seus recursos, seja na área acadêmica ou mesmo na área profissional.
     
     

  • Mostrar Abstract
  • A colaboração na pesquisa é uma das tarefas centrais da área acadêmica. Atualmente, muitos pesquisadores estão utilizando meios modernos de troca de arquivos digitais através de ferramentas assíncronas e também com o uso de ferramentas mais sofisticadas, do tipo síncronas. Juntamente com o fato da crescente quantidade de artigos sendo gerados, mais complexos, diversificados e aumentando de forma desorganizada, o que trás ao pesquisador uma tarefa difícil para organizá-los de forma a se extrair o melhor conteúdo destes, isto ocorre porque uma subárea da Engenharia de Software (ES) ainda é bastante mal aproveitada, a Engenharia de Software Experimental (ESE). Utilizando-se de um dos tipos de experimentos que a

    ESE oferece, as revisões sistemáticas entram como uma solução bastante robusta, na qual o pesquisador pode identificar o conhecimento existente em uma área e planejar devidamente sua pesquisa, evitando a repetição de erros em pesquisas já efetivadas por
    outros pesquisadores no passado. Contudo, estas duas abordagens, a colaboração virtual de pesquisadores e a utilização de revisões sistemáticas, contem problemas: na primeira, sistemas colaborativos são geralmente difíceis de configurar e usar; na segunda, apesar
    da robustez da metodologia de revisões sistemáticas, ainda se torna necessário uma rigorosa revisão na literatura para se conseguir um resultado satisfatório. 
     
    Assim, com o foco de unir estas duas abordagens, este trabalho propõe uma maneira de produzir revisões sistemáticas de forma organizada e com a possibilidade de interação entre usuários, com o desenvolvimento de um sistema interativo, no qual as revisões sistemáticas possam ser geradas por usuários em colaboração com outros e também ser avaliadas seguindo a orientação de um profissional da área, tornando o seu conteúdo mais consistente e de melhor qualidade. O sistema não possui níveis de acesso, ou seja,
    qualquer pessoa pode se cadastrar e usufruir de seus recursos, seja na área acadêmica ou mesmo na área profissional.
     
     
12
  • FABIANO PAPAIZ
  • RR3D: Uma Solução para Renderização Remota de Imagens Médicas Tridimensionais

  • Orientador : BRUNO MOTTA DE CARVALHO
  • MEMBROS DA BANCA :
  • BRUNO MOTTA DE CARVALHO
  • GIBEON SOARES DE AQUINO JUNIOR
  • RICARDO ALEXSANDRO DE MEDEIROS VALENTIM
  • FRANCISCO MILTON MENDES NETO
  • Data: 05/04/2013

  • Mostrar Resumo
  • A visualização de imagens tridimensionais (3D) está cada vez mais presente na área da medicina, auxiliando os médicos no diagnóstico de doenças e na emissão de laudos. Com o avanço dos equipamentos que geram imagens tomográficas dos pacientes, como os de Tomografia Computadorizada (TC), estão sendo geradas imagens cada vez mais nítidas e, portanto, com resoluções e tamanhos maiores. Atualmente, as imagens contidas em um exame de TC geralmente ocupam o tamanho de dezenas e centenas de megabytes, tornando o processo de visualização 3D cada vez mais pesado - exigindo do usuário um equipamento com bom poder computacional. O acesso remoto à estas imagens, via internet por exemplo, também não é muito eficiente, pois todas as imagens precisam ser transferidas para o equipamento do usuário antes que o processo de visualização 3D seja iniciado. Diante destes problemas (tamanho das imagens e acesso remoto), este trabalho envolve a criação e análise de um serviço web para renderização remota de imagens médicas 3D, denominado RR3D. Nele, todo o processo de renderização volumétrica será realizado por um servidor, ou cluster de servidores, com alto poder computacional e somente a imagem 3D resultante será enviada ao cliente, permitindo que este ainda possa fazer operações como rotação, zoom etc. O serviço web será desenvolvido utilizando a linguagem Java e na arquitetura do projeto serão utilizados o programa de visualização científica Paraview, o framework ParaviewWeb e o servidor DCM4CHEE.


  • Mostrar Abstract
  • A visualização de imagens tridimensionais (3D) está cada vez mais presente na área da medicina, auxiliando os médicos no diagnóstico de doenças e na emissão de laudos. Com o avanço dos equipamentos que geram imagens tomográficas dos pacientes, como os de Tomografia Computadorizada (TC), estão sendo geradas imagens cada vez mais nítidas e, portanto, com resoluções e tamanhos maiores. Atualmente, as imagens contidas em um exame de TC geralmente ocupam o tamanho de dezenas e centenas de megabytes, tornando o processo de visualização 3D cada vez mais pesado - exigindo do usuário um equipamento com bom poder computacional. O acesso remoto à estas imagens, via internet por exemplo, também não é muito eficiente, pois todas as imagens precisam ser transferidas para o equipamento do usuário antes que o processo de visualização 3D seja iniciado. Diante destes problemas (tamanho das imagens e acesso remoto), este trabalho envolve a criação e análise de um serviço web para renderização remota de imagens médicas 3D, denominado RR3D. Nele, todo o processo de renderização volumétrica será realizado por um servidor, ou cluster de servidores, com alto poder computacional e somente a imagem 3D resultante será enviada ao cliente, permitindo que este ainda possa fazer operações como rotação, zoom etc. O serviço web será desenvolvido utilizando a linguagem Java e na arquitetura do projeto serão utilizados o programa de visualização científica Paraview, o framework ParaviewWeb e o servidor DCM4CHEE.

13
  • JOSE AUGUSTO NASCIMENTO DE MEDEIROS
  • Reengenharia do Framework Cosmos : uma Solução para Prover Suporte a Adaptações Abertas

  • Orientador : ADILSON BARBOZA LOPES
  • MEMBROS DA BANCA :
  • ADILSON BARBOZA LOPES
  • UIRA KULESZA
  • CARLOS EDUARDO DA SILVA
  • NELSON SOUTO ROSA
  • Data: 17/05/2013

  • Mostrar Resumo
  • Sistemas de software autoadaptativos são caracterizados por terem a capacidade de mudar sua estrutura e/ou seu comportamento em tempo de execução, em decorrência, por exemplo, de alterações em seus requisitos, de seu ambiente de execução, da variabilidade dos recursos disponíveis, assim como de possíveis falhas de seus componentes.

     Uma das maneiras de se alcançar a autoadaptação é a utilização de uma sequência de ações (conhecidas como planos de adaptação) que normalmente são definidas em tempo de desenvolvimento, resultando, neste caso, em uma adaptação denominada como fechada.

    Esse tipo de adaptação foi adotado pelo Cosmos - um framework proposto para dar suporte à configuração e ao gerenciamento de recursos em ambientes distribuídos.

     De maneira a lidar com a variabilidade inerente aos sistemas autoadaptativos, como por exemplo, o aparecimento de novos componentes que permitam o estabelecimento de outras configurações que não foram consideradas em tempo de desenvolvimento, o presente trabalho procura dar ao Cosmos a possibilidade de utilizar planos de adaptação gerados em tempo de execução. Neste caso, uma adaptação pode ser denominada como aberta.

    Para prover suporte a adaptações abertas no Cosmos, era necessário definir um processo de reengenharia no mesmo, de maneira a permitir sua integração com algum processo capaz de gerar dinamicamente planos de adaptação.

    Nesse contexto, o presente trabalho se concentrou no processo de reengenharia do Cosmos, onde foi realizada uma série de mudanças visando dar suportar a integração com mecanismos de geração de processos. Devemos destacar porém que o principio consistiu em reutilizar toda a estrutura e esforços anteriores.

    Dentre as mudanças realizadas no Cosmos, podemos destacar: alterações no metamodelo utilizado para representar componentes e aplicações, que foi redefinido com base em uma linguagem de descrição arquitetural.

     As alterações foram propagadas para a implementação de um novo protótipo do Cosmos, que foi utilizado para o desenvolvimento de aplicações definidas para fins de prova de conceito.

    Outro esforço empreendido consistiu em tornar  o uso do Cosmos mais atrativo ao viabilizar a integração  do Cosmos  com outras plataformas. Especificamente, no presente trabalho, algumas mudanças foram realizadas visando sua integração com a plataforma OSGi, uma plataforma bem aceita pela indústria. Assim, pode-se permitir que o framework Cosmos possa  rodar usando os mecanismos de OSGi ou rmi/jvm


  • Mostrar Abstract
  • Sistemas de software autoadaptativos são caracterizados por terem a capacidade de mudar sua estrutura e/ou seu comportamento em tempo de execução, em decorrência, por exemplo, de alterações em seus requisitos, de seu ambiente de execução, da variabilidade dos recursos disponíveis, assim como de possíveis falhas de seus componentes.

     Uma das maneiras de se alcançar a autoadaptação é a utilização de uma sequência de ações (conhecidas como planos de adaptação) que normalmente são definidas em tempo de desenvolvimento, resultando, neste caso, em uma adaptação denominada como fechada.

    Esse tipo de adaptação foi adotado pelo Cosmos - um framework proposto para dar suporte à configuração e ao gerenciamento de recursos em ambientes distribuídos.

     De maneira a lidar com a variabilidade inerente aos sistemas autoadaptativos, como por exemplo, o aparecimento de novos componentes que permitam o estabelecimento de outras configurações que não foram consideradas em tempo de desenvolvimento, o presente trabalho procura dar ao Cosmos a possibilidade de utilizar planos de adaptação gerados em tempo de execução. Neste caso, uma adaptação pode ser denominada como aberta.

    Para prover suporte a adaptações abertas no Cosmos, era necessário definir um processo de reengenharia no mesmo, de maneira a permitir sua integração com algum processo capaz de gerar dinamicamente planos de adaptação.

    Nesse contexto, o presente trabalho se concentrou no processo de reengenharia do Cosmos, onde foi realizada uma série de mudanças visando dar suportar a integração com mecanismos de geração de processos. Devemos destacar porém que o principio consistiu em reutilizar toda a estrutura e esforços anteriores.

    Dentre as mudanças realizadas no Cosmos, podemos destacar: alterações no metamodelo utilizado para representar componentes e aplicações, que foi redefinido com base em uma linguagem de descrição arquitetural.

     As alterações foram propagadas para a implementação de um novo protótipo do Cosmos, que foi utilizado para o desenvolvimento de aplicações definidas para fins de prova de conceito.

    Outro esforço empreendido consistiu em tornar  o uso do Cosmos mais atrativo ao viabilizar a integração  do Cosmos  com outras plataformas. Especificamente, no presente trabalho, algumas mudanças foram realizadas visando sua integração com a plataforma OSGi, uma plataforma bem aceita pela indústria. Assim, pode-se permitir que o framework Cosmos possa  rodar usando os mecanismos de OSGi ou rmi/jvm

14
  • PATRICK CESAR ALVES TERREMATTE
  • A INTEGRAÇÃO DO TUTORIAL INTERATIVO TRYLOGIC VIA IMS LEARNING TOOLS INTEROPERABILITY: CONSTRUINDO UMA INFRAESTRUTURA PARA O ENSINO DE LÓGICA ATRAVÉS DE ESTRATÉGIAS DE DEMONSTRAÇÃO E REFUTAÇÃO

  • Orientador : JOAO MARCOS DE ALMEIDA
  • MEMBROS DA BANCA :
  • EDWARD HERMANN
  • JOAO MARCOS DE ALMEIDA
  • LEONARDO CUNHA DE MIRANDA
  • REGIVAN HUGO NUNES SANTIAGO
  • Data: 03/06/2013

  • Mostrar Resumo
  • A disciplina de Lógica representa um desafio tanto para docentes como para discentes, o que em muitos casos resulta em reprovações e desistências. Dentre as dificuldades enfrentadas pelos alunos está a sobrecarga da capacidade cognitiva para compreender os conceitos lógicos de forma relevante. Neste sentido, as ferramentas computacionais de aprendizagem são recursos que auxiliam a redução de cenários de sobrecarga cognitiva, como também permitem a experiência prática de conceitos teóricos. O presente trabalho propõe uma tutorial interativo chamado TryLogic, visando ao ensino da tarefa de Demonstração ou Refutação de conjecturas lógicas. Trata-se de uma ferramenta desenvolvida a partir da arquitetura do TryOcaml através do suporte de comunicação da interface web ProofWeb para acessar o assistente de demonstração de teoremas Coq. Os objetivos do TryLogic  são: (1) Apresentar um conjunto de lições para aplicar estratégias heurísticas de análise de problemas em Lógica Proposicional; (2) Organizar em passo-a-passo a exposição dos conteúdos de Dedução Natural e Semântica Proposicional de forma sequencial; e (3) Fornecer aos alunos tarefas interativas. O presente trabalho propõe também apresentar a nossa implementação de um sistema formal de refutação; descrever a integração de nossa infraestrutura com o Ambiente Virtual de Aprendizagem Moodle através da especificação IMS Learning Tools Interoperability; apresentar o Gerador de Conjecturas de tarefas de Demonstração e Refutação e, por fim, avaliar a experiência da aprendizagem de alunos de Lógica através da aplicação da tarefa de DxR em associação à utilização do TryLogic.


  • Mostrar Abstract
  • A disciplina de Lógica representa um desafio tanto para docentes como para discentes, o que em muitos casos resulta em reprovações e desistências. Dentre as dificuldades enfrentadas pelos alunos está a sobrecarga da capacidade cognitiva para compreender os conceitos lógicos de forma relevante. Neste sentido, as ferramentas computacionais de aprendizagem são recursos que auxiliam a redução de cenários de sobrecarga cognitiva, como também permitem a experiência prática de conceitos teóricos. O presente trabalho propõe uma tutorial interativo chamado TryLogic, visando ao ensino da tarefa de Demonstração ou Refutação de conjecturas lógicas. Trata-se de uma ferramenta desenvolvida a partir da arquitetura do TryOcaml através do suporte de comunicação da interface web ProofWeb para acessar o assistente de demonstração de teoremas Coq. Os objetivos do TryLogic  são: (1) Apresentar um conjunto de lições para aplicar estratégias heurísticas de análise de problemas em Lógica Proposicional; (2) Organizar em passo-a-passo a exposição dos conteúdos de Dedução Natural e Semântica Proposicional de forma sequencial; e (3) Fornecer aos alunos tarefas interativas. O presente trabalho propõe também apresentar a nossa implementação de um sistema formal de refutação; descrever a integração de nossa infraestrutura com o Ambiente Virtual de Aprendizagem Moodle através da especificação IMS Learning Tools Interoperability; apresentar o Gerador de Conjecturas de tarefas de Demonstração e Refutação e, por fim, avaliar a experiência da aprendizagem de alunos de Lógica através da aplicação da tarefa de DxR em associação à utilização do TryLogic.

15
  • HANDERSON BEZERRA MEDEIROS
  • PEWS-RT: Um sistema de tempo de execucao para a linguagem PEWS.

  • Orientador : MARTIN ALEJANDRO MUSICANTE
  • MEMBROS DA BANCA :
  • ANDRÉ LUÍS DE MEDEIROS SANTOS
  • MARTIN ALEJANDRO MUSICANTE
  • UMBERTO SOUZA DA COSTA
  • Data: 17/07/2013

  • Mostrar Resumo
  • Serviços web são aplicações de baixo acoplamento que utilizam documentos XML como forma de integração de sistemas distintos. Tais documentos são usados em especificações como SOAP, WSDL e UDDI que estabelecem, respectivamente, padrões integrados para a representação de mensagens, descrição e publicação de serviços, facilitando assim, a interoperabilidade de sistemas heterogêneos. Muitas vezes um só serviço não atende às necessidades dos usuários, portanto, novos sistemas podem ser concebidos a partir da composição de dois ou mais serviços, motivando o desenvolvimento da SOA - arquitetura orientada a serviços.

    Paralelo a esse cenário, tem-se a linguagem PEWS (Predicate path-Expres-sions for Web Services), que especifica o comportamento de como operações de serviços web são executadas em uma composição de serviços. O desenvolvimento da linguagem PEWS é dividido em duas partes: front-end e back-end. A partir de um programa PEWS, o front-end realiza a análise léxica, sintática e semântica das composições e por fim gera código XML. O back-end  tem como função executar a composição PEWS. Este trabalho visa: (i) reformular a arquitetura proposta para o sistema de tempo de execução da linguagem, (ii) Implementar o back-end de PEWS mediante o uso de ferramentas do.Net Framework e gerar documentos de fluxo de trabalho e classes C#, para executar programas PEWS usando a tecnologia Windows Workflow Foundation.


  • Mostrar Abstract
  • Serviços web são aplicações de baixo acoplamento que utilizam documentos XML como forma de integração de sistemas distintos. Tais documentos são usados em especificações como SOAP, WSDL e UDDI que estabelecem, respectivamente, padrões integrados para a representação de mensagens, descrição e publicação de serviços, facilitando assim, a interoperabilidade de sistemas heterogêneos. Muitas vezes um só serviço não atende às necessidades dos usuários, portanto, novos sistemas podem ser concebidos a partir da composição de dois ou mais serviços, motivando o desenvolvimento da SOA - arquitetura orientada a serviços.

    Paralelo a esse cenário, tem-se a linguagem PEWS (Predicate path-Expres-sions for Web Services), que especifica o comportamento de como operações de serviços web são executadas em uma composição de serviços. O desenvolvimento da linguagem PEWS é dividido em duas partes: front-end e back-end. A partir de um programa PEWS, o front-end realiza a análise léxica, sintática e semântica das composições e por fim gera código XML. O back-end  tem como função executar a composição PEWS. Este trabalho visa: (i) reformular a arquitetura proposta para o sistema de tempo de execução da linguagem, (ii) Implementar o back-end de PEWS mediante o uso de ferramentas do.Net Framework e gerar documentos de fluxo de trabalho e classes C#, para executar programas PEWS usando a tecnologia Windows Workflow Foundation.

16
  • GLAUBER GALVAO DE ARAUJO
  • Um Framework Conceitual para apoiar a instrumentação da Avaliação Formativa da Aprendizagem em Jogos Digitais

  • Orientador : EDUARDO HENRIQUE DA SILVA ARANHA
  • MEMBROS DA BANCA :
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • ANDRE MAURICIO CUNHA CAMPOS
  • IZABEL AUGUSTA HAZIN PIRES
  • GEBER LISBOA RAMALHO
  • Data: 29/07/2013

  • Mostrar Resumo
  • A avaliação contínua da aprendizagem é um processo cíclico e contínuo, que
    verifica se as ações pedagógicas desempenhadas produziram resultados efetivos nos
    aprendizes e comprovam, a partir de sua aferição, a realização dos objetivos específicos
    do plano de ensino elaborado. Entretanto, a importância desse tipo de avaliação não
    facilita a sua execução e é relegada por muitos professores sob o argumento de serem
    complexas e impossíveis de serem realizadas em turmas grandes e heterogêneas, já que
    geram dados da aquisição de conhecimento individual de cada aprendiz. Por outro lado,
    a instrumentação da avaliação contínua é também um entrave à sua prática. Os
    questionários impressos são maçantes e, de fato, têm uma logística difícil para o
    professor. Embora mais dinâmicas e possíveis, as avaliações contínuas em ambiente
    computacional continuam sendo cansativas, porque apenas transportam o questionário
    impresso para um computador ou dispositivo móvel. Nesse sentido, para contribuir com
    as possíveis soluções para esses obstáculos, esta pesquisa apresenta uma proposta que
    une a instrumentação da avaliação contínua em ambiente computacional com os
    elementos lúdicos presentes nos jogos digitais com a finalidade de tornar a tarefa de
    avaliar continuamente mais factível para o professor e mais estimulante para o aprendiz.


  • Mostrar Abstract
  • A avaliação contínua da aprendizagem é um processo cíclico e contínuo, que
    verifica se as ações pedagógicas desempenhadas produziram resultados efetivos nos
    aprendizes e comprovam, a partir de sua aferição, a realização dos objetivos específicos
    do plano de ensino elaborado. Entretanto, a importância desse tipo de avaliação não
    facilita a sua execução e é relegada por muitos professores sob o argumento de serem
    complexas e impossíveis de serem realizadas em turmas grandes e heterogêneas, já que
    geram dados da aquisição de conhecimento individual de cada aprendiz. Por outro lado,
    a instrumentação da avaliação contínua é também um entrave à sua prática. Os
    questionários impressos são maçantes e, de fato, têm uma logística difícil para o
    professor. Embora mais dinâmicas e possíveis, as avaliações contínuas em ambiente
    computacional continuam sendo cansativas, porque apenas transportam o questionário
    impresso para um computador ou dispositivo móvel. Nesse sentido, para contribuir com
    as possíveis soluções para esses obstáculos, esta pesquisa apresenta uma proposta que
    une a instrumentação da avaliação contínua em ambiente computacional com os
    elementos lúdicos presentes nos jogos digitais com a finalidade de tornar a tarefa de
    avaliar continuamente mais factível para o professor e mais estimulante para o aprendiz.

17
  • FABIO ALEXANDRE GONCALVES SILVA
  • STREAM-AP: Um Processo para Sistematizar a Escolha de Padroes Arquiteturais baseada em Requisitos Não Funcionais

  • Orientador : MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • MEMBROS DA BANCA :
  • CARLA TACIANA LIMA LOURENCO SILVA SCHUENEMANN
  • LYRENE FERNANDES DA SILVA
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • Data: 30/07/2013

  • Mostrar Resumo
  • Cada vez mais os sistemas computacionais precisam satisfazer requisitos não-funcionais. No entanto a satisfação destes requisitos exige uma atenção especial já que são requisitos que devem ser levados em consideração pelas arquiteturas de software que representam esses sistemas. Uma arquitetura de software inadequada introduz uma complexidade maior, além da complexidade intrínseca do sistema. Além disso, estudos mostram que apesar das atividades de engenharia de requisitos e de arquitetura de software atuarem em diferentes aspectos do desenvolvimento, é preciso executá-las de forma iterativa e entrelaçada para produzir sistemas computacionais satisfatórios. Com o objetivo de diminuir a lacuna existente entre requisitos de software e o desenvolvimento de uma arquitetura de software que reflita esses requisitos, foi proposto o processo STREAM. Ele consiste de uma abordagem sistemática que enfatiza os requisitos funcionais, sendo os não-funcionais usados de forma ad hoc. Entretanto, os requisitos não-funcionais normalmente impactam o sistema como um todo. Assim a maneira proposta pelo STREAM para fazer com que a arquitetura de software desenvolvida reflita os RNFs elicitados no modelo de requisitos é através do refinamento da arquitetura de padrões arquiteturais escolhidos a partir de requisitos não-funcionais. A escolha desses padrões é realizada de forma ad hoc. Com o objetivo de sistematizar a forma de escolha dos padrões arquiteturais esta dissertação propõe uma sistematização de escolha de padrões arquiteturais, a partir de requisitos não-funcionais racionalizados, que serão usados para refinar arquitetura de software.


  • Mostrar Abstract
  • Cada vez mais os sistemas computacionais precisam satisfazer requisitos não-funcionais. No entanto a satisfação destes requisitos exige uma atenção especial já que são requisitos que devem ser levados em consideração pelas arquiteturas de software que representam esses sistemas. Uma arquitetura de software inadequada introduz uma complexidade maior, além da complexidade intrínseca do sistema. Além disso, estudos mostram que apesar das atividades de engenharia de requisitos e de arquitetura de software atuarem em diferentes aspectos do desenvolvimento, é preciso executá-las de forma iterativa e entrelaçada para produzir sistemas computacionais satisfatórios. Com o objetivo de diminuir a lacuna existente entre requisitos de software e o desenvolvimento de uma arquitetura de software que reflita esses requisitos, foi proposto o processo STREAM. Ele consiste de uma abordagem sistemática que enfatiza os requisitos funcionais, sendo os não-funcionais usados de forma ad hoc. Entretanto, os requisitos não-funcionais normalmente impactam o sistema como um todo. Assim a maneira proposta pelo STREAM para fazer com que a arquitetura de software desenvolvida reflita os RNFs elicitados no modelo de requisitos é através do refinamento da arquitetura de padrões arquiteturais escolhidos a partir de requisitos não-funcionais. A escolha desses padrões é realizada de forma ad hoc. Com o objetivo de sistematizar a forma de escolha dos padrões arquiteturais esta dissertação propõe uma sistematização de escolha de padrões arquiteturais, a partir de requisitos não-funcionais racionalizados, que serão usados para refinar arquitetura de software.

18
  • DANN LUCIANO DE MENEZES
  • Uma Análise Experimental de Algoritmos Metaheurísticos para um Problema de Caminho mais Curto Multiobjetivo na Computação em Nuvem

  • Orientador : ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MEMBROS DA BANCA :
  • ANTONIO CARLOS GAY THOME
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • ILONEIDE CARLOS DE OLIVEIRA RAMOS
  • MARCO CESAR GOLDBARG
  • Data: 05/08/2013

  • Mostrar Resumo
  • Este trabalho contem um aplicação pratica de três algoritmos para o problema do caminho
    mais curto multi-objetivo em computação na nuvem. Um dos algoritmos é exato (Martins) e
    os outros dois são meta-heurísticos (NSGA-II e Transgenético). Apesar do exato encontrar toda
    a fronteira de Pareto nas instancias pequenas o mesmo não consegue para instancias grandes e
    por esse motivo os algoritmos aproximativos foram desenvolvidos, afinados e comparados.Com a inviabilidade dos algoritmos exatos, duas técnicas heurísticas foram utilizadas, o
    NSGA-II e a Transgenética Computacional. Ambas as técnicas foram escolhidas por suas inúmeras contribuições em outros problemas de otimização. A partir do uso dos testes estatísticos
    em cima dos resultado obtidos nos experimentos computacionais, pode-se inferir que o algoritmo Transgenético quando comparado ao NSGA-II se sobressai tanto em qualidade de solução
    como na utilização de menos recursos computacionais, principalmente quando o Transgenético
    utiliza a estrategia chamada de LOGOS para inicializar o seu banco de informações genéticas.


  • Mostrar Abstract
  • Este trabalho contem um aplicação pratica de três algoritmos para o problema do caminho
    mais curto multi-objetivo em computação na nuvem. Um dos algoritmos é exato (Martins) e
    os outros dois são meta-heurísticos (NSGA-II e Transgenético). Apesar do exato encontrar toda
    a fronteira de Pareto nas instancias pequenas o mesmo não consegue para instancias grandes e
    por esse motivo os algoritmos aproximativos foram desenvolvidos, afinados e comparados.Com a inviabilidade dos algoritmos exatos, duas técnicas heurísticas foram utilizadas, o
    NSGA-II e a Transgenética Computacional. Ambas as técnicas foram escolhidas por suas inúmeras contribuições em outros problemas de otimização. A partir do uso dos testes estatísticos
    em cima dos resultado obtidos nos experimentos computacionais, pode-se inferir que o algoritmo Transgenético quando comparado ao NSGA-II se sobressai tanto em qualidade de solução
    como na utilização de menos recursos computacionais, principalmente quando o Transgenético
    utiliza a estrategia chamada de LOGOS para inicializar o seu banco de informações genéticas.

19
  • EDMILSON BARBALHO CAMPOS NETO
  • Um Método para Desenvolvimento de Abordagens Generativas com Composição de Linguagens Específicas de Domínio

  • Orientador : UIRA KULESZA
  • MEMBROS DA BANCA :
  • FRANKLIN DE SOUZA RAMALHO
  • GIBEON SOARES DE AQUINO JUNIOR
  • UIRA KULESZA
  • Data: 05/08/2013

  • Mostrar Resumo
  • A utilização de linguagens específicas de domínios para o desenvolvimento de sistemas de software tem se tornado cada vez mais comum. Elas propiciam um aumento da expressividade do domínio, elevando o seu nível de abstração através de facilidades para geração de modelos ou códigos de baixo-nível, que aumentam assim a produtividade do desenvolvimento de sistemas. Como consequência, métodos para o desenvolvimento de linhas de produtos de software e famílias de sistemas também têm proposto a utilização de linguagens específicas de domínio (domain-specific language – DSLs). Estudos recentes têm investigado os limites de expressividade do modelo de features, e propondo o uso de DSLs em sua substituição ou complemento. Contudo, em projetos complexos, uma única DSL muitas vezes é insuficiente para representar as diferentes visões e perspectivas do desenvolvimento, sendo necessário trabalhar com múltiplas DSLs. Com isso surgem novos desafios, tais como a gerência de consistência entre as DSLs, e a necessidade de métodos e ferramentas que ofereçam suporte ao desenvolvimento com múltiplas DSLs. Ao longo dos últimos anos, diversas abordagens têm sido propostas para o desenvolvimento de abordagens generativas, entretanto, nenhuma delas considera questões relacionadas a composição de DSLs. Assim, visando abordar tal problemática, os principais objetivos desta dissertação são: (i) investigar a adoção do uso integrado de modelos de features e DSLs tanto na engenharia de domínio quanto de aplicação de desenvolvimento de abordagens generativas; e (ii) investigar e avaliar o uso de tecnologias modernas de engenharia dirigida por modelos na implementação de estratégias de integração entre modelos de features e composição de DSLs. Como resultado, é proposto um método para o desenvolvimento de abordagens generativas com composição de DSLs que parte da junção de abordagens existentes. Um estudo exploratório foi realizado para avaliar o método proposto para o domínio de engenharia de software experimental. Também foram feitas análises comparativas entre o método proposto e outras abordagens existentes.


  • Mostrar Abstract
  • A utilização de linguagens específicas de domínios para o desenvolvimento de sistemas de software tem se tornado cada vez mais comum. Elas propiciam um aumento da expressividade do domínio, elevando o seu nível de abstração através de facilidades para geração de modelos ou códigos de baixo-nível, que aumentam assim a produtividade do desenvolvimento de sistemas. Como consequência, métodos para o desenvolvimento de linhas de produtos de software e famílias de sistemas também têm proposto a utilização de linguagens específicas de domínio (domain-specific language – DSLs). Estudos recentes têm investigado os limites de expressividade do modelo de features, e propondo o uso de DSLs em sua substituição ou complemento. Contudo, em projetos complexos, uma única DSL muitas vezes é insuficiente para representar as diferentes visões e perspectivas do desenvolvimento, sendo necessário trabalhar com múltiplas DSLs. Com isso surgem novos desafios, tais como a gerência de consistência entre as DSLs, e a necessidade de métodos e ferramentas que ofereçam suporte ao desenvolvimento com múltiplas DSLs. Ao longo dos últimos anos, diversas abordagens têm sido propostas para o desenvolvimento de abordagens generativas, entretanto, nenhuma delas considera questões relacionadas a composição de DSLs. Assim, visando abordar tal problemática, os principais objetivos desta dissertação são: (i) investigar a adoção do uso integrado de modelos de features e DSLs tanto na engenharia de domínio quanto de aplicação de desenvolvimento de abordagens generativas; e (ii) investigar e avaliar o uso de tecnologias modernas de engenharia dirigida por modelos na implementação de estratégias de integração entre modelos de features e composição de DSLs. Como resultado, é proposto um método para o desenvolvimento de abordagens generativas com composição de DSLs que parte da junção de abordagens existentes. Um estudo exploratório foi realizado para avaliar o método proposto para o domínio de engenharia de software experimental. Também foram feitas análises comparativas entre o método proposto e outras abordagens existentes.

20
  • VICENTE PIRES LUSTOSA NETO
  • POPT: Uma Abordagem de Ensino de Programação Orientada a Problema e Testes

  • Orientador : ROBERTA DE SOUZA COELHO
  • MEMBROS DA BANCA :
  • ANDRE MAURICIO CUNHA CAMPOS
  • ANDREA PEREIRA MENDONÇA
  • DALTON DARIO SEREY GUERRERO
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • ROBERTA DE SOUZA COELHO
  • Data: 05/08/2013

  • Mostrar Resumo
  • Há um interesse crescente da comunidde de educação de Ciência da Computação com relação à inclusão de conceitos de testes em cursos introdutórios de programação. No entanto, inserir conceitos de teste de software para alunos iniciantes dos Cursos de Ciência da Computação pode ser particularmente difícil, pois além de aprender as estruturas básicas de programação (e.g., estruturas de controle, estruturas de repetição, comandos de entrada e saída), os alunos precisam lidar com as peculiaridades das técnicas e ferramentas de testes. Por esse motivo, as grades curriculares muitas vezes relegam tópicos de teste para períodos mais avançados ou cursos separados, fazendo com que os alunos pensem que teste de software é difícil, menos importante, ou opcional. Neste trabalho é proposta POPT (do ingles: Problem Oriented Programming and Testing) , uma abordagem de ensino de programação orientada a problema e testes para cursos introdutórios. O principal objetivo de POPT, é o de melhorar o método tradicional de ensino de introdução a programação que se concentra essencialmente na implementação e negligencia o teste. De acordo com POPT, as habilidades dos alunos devem ser desenvolvidas para lidar com problemas mal definidos, a partir do qual os alunos são estimulados a desenvolver casos de teste a fim de ampliar o entendimento sobre os requisitos e melhorar a qualidade do código gerado. Este trabalho apresenta POPT e um caso estudo realizado em um curso introdutório de programação de um Programa de Ciência da Computação da Universidade Federal do Rio Grande do Norte, Brasil. Os resultados do estudo mostraram que, quando comparado com uma abordagem tradicional, POPT estimula a implementação de programas de melhor qualidade – a primeira versão dos programas submetidos pelos alunos POPT passaram em duas vezes o número de casos de teste (definidos pelo professor) quando comparados aos alunos não POPT. Além disso, os alunos POPT apresentaram menos versões do programa e passaram mais tempo para apresentar a primeira versão para o sistema de avaliação automática, o que nos leva a pensar que os alunos são estimulados a pensar melhor sobre a solução que eles estão a programar.


  • Mostrar Abstract
  • Há um interesse crescente da comunidde de educação de Ciência da Computação com relação à inclusão de conceitos de testes em cursos introdutórios de programação. No entanto, inserir conceitos de teste de software para alunos iniciantes dos Cursos de Ciência da Computação pode ser particularmente difícil, pois além de aprender as estruturas básicas de programação (e.g., estruturas de controle, estruturas de repetição, comandos de entrada e saída), os alunos precisam lidar com as peculiaridades das técnicas e ferramentas de testes. Por esse motivo, as grades curriculares muitas vezes relegam tópicos de teste para períodos mais avançados ou cursos separados, fazendo com que os alunos pensem que teste de software é difícil, menos importante, ou opcional. Neste trabalho é proposta POPT (do ingles: Problem Oriented Programming and Testing) , uma abordagem de ensino de programação orientada a problema e testes para cursos introdutórios. O principal objetivo de POPT, é o de melhorar o método tradicional de ensino de introdução a programação que se concentra essencialmente na implementação e negligencia o teste. De acordo com POPT, as habilidades dos alunos devem ser desenvolvidas para lidar com problemas mal definidos, a partir do qual os alunos são estimulados a desenvolver casos de teste a fim de ampliar o entendimento sobre os requisitos e melhorar a qualidade do código gerado. Este trabalho apresenta POPT e um caso estudo realizado em um curso introdutório de programação de um Programa de Ciência da Computação da Universidade Federal do Rio Grande do Norte, Brasil. Os resultados do estudo mostraram que, quando comparado com uma abordagem tradicional, POPT estimula a implementação de programas de melhor qualidade – a primeira versão dos programas submetidos pelos alunos POPT passaram em duas vezes o número de casos de teste (definidos pelo professor) quando comparados aos alunos não POPT. Além disso, os alunos POPT apresentaram menos versões do programa e passaram mais tempo para apresentar a primeira versão para o sistema de avaliação automática, o que nos leva a pensar que os alunos são estimulados a pensar melhor sobre a solução que eles estão a programar.

21
  • FERNANDO HELTON LINHARES SOARES
  • Instanciação e Avaliação de um Framework para a Geração Dinâmica de Processos

  • Orientador : ADILSON BARBOZA LOPES
  • MEMBROS DA BANCA :
  • ADILSON BARBOZA LOPES
  • CARLOS EDUARDO DA SILVA
  • RAIMUNDO JOSÉ DE ARAÚJO MACÊDO
  • THAIS VASCONCELOS BATISTA
  • Data: 05/08/2013

  • Mostrar Resumo
  • A incerteza e a variabilidade associada com o ambiente dos sistemas de software atuais tem contribuído para o aumento da necessidade de lidar em tempo de execução com mudanças nos objetivos da aplicação, condições inesperadas e ambientes imprevisíveis. Uma forma de lidar com essas necessidades é através de sistemas autoadaptativos. Sistemas autoadaptativos devem ser capazes de monitorar a si mesmos e ao seu ambiente, analisar os dados monitorados para determinar a necessidade de adaptação, decidir como a adaptação será realizada e, por fim, realizar as adaptações necessárias. Uma das maneiras de realizar a adaptação de um sistema é gerar, em tempo de execução, o processo que irá executar a adaptação. Uma vantagem dessa abordagem é a possibilidade de levar em consideração características que só podem ser avaliadas em tempo de execução. O objetivo deste trabalho é a instanciação de um framework de geração dinâmica de processos para gerar planos de adaptação sobre o ambiente OSGi. Nosso principal interesse é avaliar como o framework de geração dinâmica de processos se comporta em um novo ambiente.


  • Mostrar Abstract
  • A incerteza e a variabilidade associada com o ambiente dos sistemas de software atuais tem contribuído para o aumento da necessidade de lidar em tempo de execução com mudanças nos objetivos da aplicação, condições inesperadas e ambientes imprevisíveis. Uma forma de lidar com essas necessidades é através de sistemas autoadaptativos. Sistemas autoadaptativos devem ser capazes de monitorar a si mesmos e ao seu ambiente, analisar os dados monitorados para determinar a necessidade de adaptação, decidir como a adaptação será realizada e, por fim, realizar as adaptações necessárias. Uma das maneiras de realizar a adaptação de um sistema é gerar, em tempo de execução, o processo que irá executar a adaptação. Uma vantagem dessa abordagem é a possibilidade de levar em consideração características que só podem ser avaliadas em tempo de execução. O objetivo deste trabalho é a instanciação de um framework de geração dinâmica de processos para gerar planos de adaptação sobre o ambiente OSGi. Nosso principal interesse é avaliar como o framework de geração dinâmica de processos se comporta em um novo ambiente.

22
  • MAX MILLER DA SILVEIRA
  • Linguagem de Domínio Específico para Modelagem e Avaliação de Processadores.

  • Orientador : MARCIO EDUARDO KREUTZ
  • MEMBROS DA BANCA :
  • ALTAMIRO AMADEU SUSIN
  • JORGIANO MARCIO BRUNO VIDAL
  • MARCIO EDUARDO KREUTZ
  • MARTIN ALEJANDRO MUSICANTE
  • Data: 09/08/2013

  • Mostrar Resumo
  • A constante evolução tecnológica, habilitada pelos modernos processos de fabricação, torna os processos de desenvolvimentos de equipamentos de hardware mais complexos, ao mesmo tempo que demanda processos rápidos e eficazes para a efetiva implementa- ção de arquiteturas otimizadas. Devido à demandas de mercado, observa-se, por parte das empresas, um aumento na busca por processos que visam em buscas de otimizar a modelagem e síntese de componentes de hardware. Com base nessa problemática, este trabalho propõem a criação e uso de uma linguagem de modelagem de domínio específico para permitir a concepção e avaliação de arquiteturas de processadores Com os modelos de processadores criados a partir da linguagem aqui proposta, serão reali- zadas transformações de modelos, a fim de se obter processadores em diferentes níveis de abstração, com foco na avaliação destes. 


  • Mostrar Abstract
  • A constante evolução tecnológica, habilitada pelos modernos processos de fabricação, torna os processos de desenvolvimentos de equipamentos de hardware mais complexos, ao mesmo tempo que demanda processos rápidos e eficazes para a efetiva implementa- ção de arquiteturas otimizadas. Devido à demandas de mercado, observa-se, por parte das empresas, um aumento na busca por processos que visam em buscas de otimizar a modelagem e síntese de componentes de hardware. Com base nessa problemática, este trabalho propõem a criação e uso de uma linguagem de modelagem de domínio específico para permitir a concepção e avaliação de arquiteturas de processadores Com os modelos de processadores criados a partir da linguagem aqui proposta, serão reali- zadas transformações de modelos, a fim de se obter processadores em diferentes níveis de abstração, com foco na avaliação destes. 

23
  • HÉLIO DE ALBUQUERQUE SIEBRA
  •  

    Segmentação Fuzzy de Imagens Coloridas com Características Texturais: Uma Aplicação a Rochas Sedimentares


  • Orientador : BRUNO MOTTA DE CARVALHO
  • MEMBROS DA BANCA :
  • ANTONIO CARLOS GAY THOME
  • BRUNO MOTTA DE CARVALHO
  • SELAN RODRIGUES DOS SANTOS
  • Data: 08/11/2013

  • Mostrar Resumo
  •  

    A Segmentação de imagens é o processo de rotulagem de pixels em diferentes objetos, um passo importante em diversos sistemas de processamento de imagens. A segmentação fuzzy, por sua vez é uma técnica que determina um grau de pertinência de cada pixel para um ou mais objetos da imagem indicando um grau de conança nessa associação. Este trabalho propõe estender o algoritmo MOFS para seu uso no agrupamento de imagens digitais coloridas com propriedades texturais. Isto é feito através da redução de dimensionalidade dos histogramas das imagens coloridas; da adaptação do algoritmo MOFS, que utiliza a técnica de crescimento de regiões, para a técnica de agrupamento; e do uso da divergência Skew no cálculo das funções de afinidade fuzzy. Esse tipo de abordagem é adequadaà segmentação de imagens coloridas que possuam características texturais, como imagens geológicas, dermatoscópicas e outras imagens naturais, como imagens que contenham montanhas, grama ou florestas. Além disso, resultados experimentais do agrupamento de texturas coloridas usando imagens de rochas sedimentares aquíferas e portadoras de hidrocarbonetos são apresentados e analisados em termos de precisão para comprovar sua efetividade.



  • Mostrar Abstract
  •  

    A Segmentação de imagens é o processo de rotulagem de pixels em diferentes objetos, um passo importante em diversos sistemas de processamento de imagens. A segmentação fuzzy, por sua vez é uma técnica que determina um grau de pertinência de cada pixel para um ou mais objetos da imagem indicando um grau de conança nessa associação. Este trabalho propõe estender o algoritmo MOFS para seu uso no agrupamento de imagens digitais coloridas com propriedades texturais. Isto é feito através da redução de dimensionalidade dos histogramas das imagens coloridas; da adaptação do algoritmo MOFS, que utiliza a técnica de crescimento de regiões, para a técnica de agrupamento; e do uso da divergência Skew no cálculo das funções de afinidade fuzzy. Esse tipo de abordagem é adequadaà segmentação de imagens coloridas que possuam características texturais, como imagens geológicas, dermatoscópicas e outras imagens naturais, como imagens que contenham montanhas, grama ou florestas. Além disso, resultados experimentais do agrupamento de texturas coloridas usando imagens de rochas sedimentares aquíferas e portadoras de hidrocarbonetos são apresentados e analisados em termos de precisão para comprovar sua efetividade.


24
  • ADRIANO ALVES DODÓ
  • On Rich Modal Logics

  • Orientador : JOAO MARCOS DE ALMEIDA
  • MEMBROS DA BANCA :
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • CLAUDIA NALON
  • ELAINE GOUVEA PIMENTEL
  • JOAO MARCOS DE ALMEIDA
  • Data: 19/11/2013

  • Mostrar Resumo
  • Esta dissertação trata do enriquecimento de lógicas modais. Usamos o termo enriquecimento em dois sentidos distintos. No primeiro deles, de fundo semântico, propomos uma semântica difusa para diversas lógicas modais normais, e demonstramos um resultado de completude para uma extensa classe dessas lógicas enriquecidas com múltiplas instâncias do axioma da confluência. Um fato curioso a respeito dessa semântica é que ela se comporta como as semânticas de Kripke usuais. O outro enriquecimento diz respeito à expressividade da lógica e se dá por meio da adição de novos conectivos, especialmente de negações modais. Neste sentido, estudamos inicialmente o fragmento da lógica clássica positiva estendido com uma negação modal paraconsistente e mostramos que essa linguagem é forte o suficiente para expressar as linguagens modais normais. Vemos que também é possível definir uma negação modal paracompleta e conectivos de restauração que internalizam as noções de consistência e determinação a nível da linguagem-objeto. Esta lógica constitui-se em uma Lógica da Inconsistência Formal e em uma Lógica da Indeterminação Formal. Em tais lógicas, com o objetivo de recuperar inferências clássicas perdidas, demonstram-se Teoremas de Ajuste de Derivabilidade. No caso da lógica estendida com uma negação paraconsistente, se removermos a implicação ainda lidaremos com uma linguagem bastante rica, com ambas negações paranormais e seus respectivos conectivos de restauração. Sobre esta linguagem estudamos a lógica modal normal minimal definida por meio de um cálculo de Gentzen apropriado, à diferença dos demais sistemas estudados até então, que são apresentados via cálculo de Hilbert. Em seguida após demonstramos a completude do sistema dedutivo associado a este cálculo, introduzimos algumas extensões desse sistema e buscamos Teoremas de Ajuste de Derivabilidade adequados.


  • Mostrar Abstract
  • Esta dissertação trata do enriquecimento de lógicas modais. Usamos o termo enriquecimento em dois sentidos distintos. No primeiro deles, de fundo semântico, propomos uma semântica difusa para diversas lógicas modais normais, e demonstramos um resultado de completude para uma extensa classe dessas lógicas enriquecidas com múltiplas instâncias do axioma da confluência. Um fato curioso a respeito dessa semântica é que ela se comporta como as semânticas de Kripke usuais. O outro enriquecimento diz respeito à expressividade da lógica e se dá por meio da adição de novos conectivos, especialmente de negações modais. Neste sentido, estudamos inicialmente o fragmento da lógica clássica positiva estendido com uma negação modal paraconsistente e mostramos que essa linguagem é forte o suficiente para expressar as linguagens modais normais. Vemos que também é possível definir uma negação modal paracompleta e conectivos de restauração que internalizam as noções de consistência e determinação a nível da linguagem-objeto. Esta lógica constitui-se em uma Lógica da Inconsistência Formal e em uma Lógica da Indeterminação Formal. Em tais lógicas, com o objetivo de recuperar inferências clássicas perdidas, demonstram-se Teoremas de Ajuste de Derivabilidade. No caso da lógica estendida com uma negação paraconsistente, se removermos a implicação ainda lidaremos com uma linguagem bastante rica, com ambas negações paranormais e seus respectivos conectivos de restauração. Sobre esta linguagem estudamos a lógica modal normal minimal definida por meio de um cálculo de Gentzen apropriado, à diferença dos demais sistemas estudados até então, que são apresentados via cálculo de Hilbert. Em seguida após demonstramos a completude do sistema dedutivo associado a este cálculo, introduzimos algumas extensões desse sistema e buscamos Teoremas de Ajuste de Derivabilidade adequados.

25
  • WALDSON PATRICIO DO NASCIMENTO LEANDRO
  • Comparação do impacto de técnicas de auxílio à navegação no wayfinding em tarefas de busca em ambientes virtuais.

  • Orientador : SELAN RODRIGUES DOS SANTOS
  • MEMBROS DA BANCA :
  • BRUNO MOTTA DE CARVALHO
  • MARCIO SARROGLIA PINHO
  • SELAN RODRIGUES DOS SANTOS
  • Data: 10/12/2013

  • Mostrar Resumo
  • Navegação, tanto em um ambiente real quanto em um virtual, consiste em um movimento deliberado de um viajante para uma localização específica, usualmente distante e que não pode ser percebida diretamente a partir da posição de partida da jornada. Técnicas de auxílio à navegação (TAN) têm como principal objetivo ajudar usuários a encontrar um caminho através de um ambiente virtual até o destino desejado e, por este motivo, são bastante utilizadas uma vez que facilitam a navegação em ambientes virtuais desconhecidos. Ferramentas como mapas impressos, GPS (Global Positioning System, em Inglês), ou mesmo instruções orais, são exemplos de TANs utilizáveis no mundo real.

    A maioria dos trabalhos que propõem novas TANs para ambientes virtuais procuram avaliar seu impacto em termos de ganho de eficiência na tarefa de navegar de um local conhecido a um local desconhecido. Contudo, tais trabalhos tendem a ignorar o efeito que uma TAN pode ter sobre o processo de aquisição de conhecimento de rota, o qual é importante em situações em que é necessário transferir o conhecimento de navegação virtual para uma situação real---por exemplo, em treinamento de rotas de fuga em ambientes industriais simulados virtualmente.

    Neste trabalho propomos avaliar e comparar o efeito causado pelo uso de TANs no aquisição de conhecimento espacial de rota, através de experimentos empíricos envolvendo a tarefa de navegação em um ambiente complexo não familiar. Antecipamos que será possível identificar uma relação inversa entre o grau de auxílio proporcionado por uma técnica e a qualidade do conhecimento de rota adquirido após uma série de repetições. Em outras palavras, acreditamos que quanto maior for o auxílio da técnica, menor será o conhecimento de rota adquirido, ou seja, serão necessários mais repetições para que técnicas com diferentes níveis de auxílio proporcionem o mesmo conhecimento espacial de rota sobre um determinado percurso.


  • Mostrar Abstract
  • Navegação, tanto em um ambiente real quanto em um virtual, consiste em um movimento deliberado de um viajante para uma localização específica, usualmente distante e que não pode ser percebida diretamente a partir da posição de partida da jornada. Técnicas de auxílio à navegação (TAN) têm como principal objetivo ajudar usuários a encontrar um caminho através de um ambiente virtual até o destino desejado e, por este motivo, são bastante utilizadas uma vez que facilitam a navegação em ambientes virtuais desconhecidos. Ferramentas como mapas impressos, GPS (Global Positioning System, em Inglês), ou mesmo instruções orais, são exemplos de TANs utilizáveis no mundo real.

    A maioria dos trabalhos que propõem novas TANs para ambientes virtuais procuram avaliar seu impacto em termos de ganho de eficiência na tarefa de navegar de um local conhecido a um local desconhecido. Contudo, tais trabalhos tendem a ignorar o efeito que uma TAN pode ter sobre o processo de aquisição de conhecimento de rota, o qual é importante em situações em que é necessário transferir o conhecimento de navegação virtual para uma situação real---por exemplo, em treinamento de rotas de fuga em ambientes industriais simulados virtualmente.

    Neste trabalho propomos avaliar e comparar o efeito causado pelo uso de TANs no aquisição de conhecimento espacial de rota, através de experimentos empíricos envolvendo a tarefa de navegação em um ambiente complexo não familiar. Antecipamos que será possível identificar uma relação inversa entre o grau de auxílio proporcionado por uma técnica e a qualidade do conhecimento de rota adquirido após uma série de repetições. Em outras palavras, acreditamos que quanto maior for o auxílio da técnica, menor será o conhecimento de rota adquirido, ou seja, serão necessários mais repetições para que técnicas com diferentes níveis de auxílio proporcionem o mesmo conhecimento espacial de rota sobre um determinado percurso.

26
  • SIDNEY SOARES MARCELINO
  • Geração de processos WS-BPEL com base em um algoritmo de reescrita de regras

  • Orientador : UMBERTO SOUZA DA COSTA
  • MEMBROS DA BANCA :
  • MARTIN ALEJANDRO MUSICANTE
  • REGINA MOTZ
  • UMBERTO SOUZA DA COSTA
  • Data: 12/12/2013

  • Mostrar Resumo
  • Os serviços web são soluções computacionais criadas de acordo com os princípios da Computação Orientada a Serviços e disponibilizadas via Internet. Novos serviços web podem surgir a partir outros pré-existentes, utilizando linguagens de composição. Considerando orquestrações de serviços, onde existe um processo central que coordena todas as operações da aplicação, propomos um método para geração de processos WS-BPEL, a partir de especificações abstratas dotadas de informações de controle.  O método proposto permite ao projetista da composição se concentrar em especificações de alto nível, aumentando sua produtividade e gerando especificações independentes de serviços web específicos.  O processo de geração de composições se baseia em um algoritmo de reescrita de regras, que foi estendido para dar suporte a informações de controle básicas. Criamos um protótipo do método de refinamento estendido e realizamos experimentos sobre estudos de caso simples.


  • Mostrar Abstract
  • Os serviços web são soluções computacionais criadas de acordo com os princípios da Computação Orientada a Serviços e disponibilizadas via Internet. Novos serviços web podem surgir a partir outros pré-existentes, utilizando linguagens de composição. Considerando orquestrações de serviços, onde existe um processo central que coordena todas as operações da aplicação, propomos um método para geração de processos WS-BPEL, a partir de especificações abstratas dotadas de informações de controle.  O método proposto permite ao projetista da composição se concentrar em especificações de alto nível, aumentando sua produtividade e gerando especificações independentes de serviços web específicos.  O processo de geração de composições se baseia em um algoritmo de reescrita de regras, que foi estendido para dar suporte a informações de controle básicas. Criamos um protótipo do método de refinamento estendido e realizamos experimentos sobre estudos de caso simples.

27
  • VIVIANE DE MENEZES RAMALHO SOUZA
  • Geração de Testes a partir de Gramáticas: Áreas de Aplicação

  • Orientador : ANAMARIA MARTINS MOREIRA
  • MEMBROS DA BANCA :
  • ANAMARIA MARTINS MOREIRA
  • GIBEON SOARES DE AQUINO JUNIOR
  • PATRICIA DUARTE DE LIMA MACHADO
  • Data: 13/12/2013

  • Mostrar Resumo
  • O trabalho proposto por Cleverton Hentz (2010) apresentou uma abordagem para definição de testes a partir da descrição formal das entradas do programa. Considerando que alguns programas podem ter suas entradas formalizadas através de gramáticas, como é o caso dos compiladores, é comum o uso de gramáticas livres de contexto para especificar o conjunto de entradas válidas. No trabalho original foi desenvolvida LGen, uma ferramenta que consiste na geração automática de testes para compiladores. No presente trabalho identificamos tipos de problemas recorrentes em diferentes áreas, onde gramáticas são usadas para descrevê-los, como por exemplo, para especificar configurações de software, e que são situações potenciais para o uso de LGen. Além disso, realizamos estudos de caso com gramáticas de domínios diferentes e a partir destes estudos foi possível avaliar o comportamento e o desempenho de LGen durante o processo de geração das sentenças, avaliando aspectos como tempo de execução, quantidade de sentenças geradas e satisfação de critérios de cobertura disponíveis em LGen.


  • Mostrar Abstract
  • O trabalho proposto por Cleverton Hentz (2010) apresentou uma abordagem para definição de testes a partir da descrição formal das entradas do programa. Considerando que alguns programas podem ter suas entradas formalizadas através de gramáticas, como é o caso dos compiladores, é comum o uso de gramáticas livres de contexto para especificar o conjunto de entradas válidas. No trabalho original foi desenvolvida LGen, uma ferramenta que consiste na geração automática de testes para compiladores. No presente trabalho identificamos tipos de problemas recorrentes em diferentes áreas, onde gramáticas são usadas para descrevê-los, como por exemplo, para especificar configurações de software, e que são situações potenciais para o uso de LGen. Além disso, realizamos estudos de caso com gramáticas de domínios diferentes e a partir destes estudos foi possível avaliar o comportamento e o desempenho de LGen durante o processo de geração das sentenças, avaliando aspectos como tempo de execução, quantidade de sentenças geradas e satisfação de critérios de cobertura disponíveis em LGen.

28
  • SARAH RAQUEL DA ROCHA SILVA
  • BTS: Uma ferramenta de suporte ao desenvolvimento sistemático de sistemas confiáveis baseados em componentes

  • Orientador : MARCEL VINICIUS MEDEIROS OLIVEIRA
  • MEMBROS DA BANCA :
  • MARCEL VINICIUS MEDEIROS OLIVEIRA
  • ANAMARIA MARTINS MOREIRA
  • ALEXANDRE CABRAL MOTA
  • Data: 13/12/2013

  • Mostrar Resumo
  • O desenvolvimento de sistemas baseados em componentes revolucionou o processo de desenvolvimento de software, facilitando a manutenção, trazendo mais confiabilidade e reutilização. Porém, mesmo com todas as boas características atribuídas ao desenvolvimento de componentes, é de extrema preocupação a forma como eles se compõem. Realizar verificação a partir de testes informais não é o suficiente para se ter uma composição segura, pois esses não possuem semântica formal que consiga prever comportamentos do sistema. Nesse contexto, surgem os métodos formais, que mantém com precisão a especificação do sistema através de notações matemáticas, trazendo, entre outros benefícios, mais segurança. O método formal CSP, possui uma semântica que suporta uma sucessão de verificações e comparações. Nesse contexto, existem abordagens que aplicam restrições usando CSP, para se verificar o comportamento da composição entre componentes, auxiliando a verificação desses componentes antecipadamente. No entanto, como a ideia atual do mercado de software é buscar cada vez mais automação dos processos, minimizando trabalhos e trazendo agilidade nos negócios, se torna inviável a utilização dessas abordagens, devido ao grande nível de complexidade e tempo. Nesse contexto, esse trabalho apresenta uma ferramenta automatizada para verificação da composição entre componentes, onde toda complexidade da linguagem formal é definida internamente, oculta para o usuário. Dessa forma, através de uma interface simples, a ferramenta BTS (BRIC-Tool-Suport) define um modelo para criação e composição de componentes, prevendo, com antecedência, comportamentos indesejáveis no sistema, como deadlocks.


  • Mostrar Abstract
  • O desenvolvimento de sistemas baseados em componentes revolucionou o processo de desenvolvimento de software, facilitando a manutenção, trazendo mais confiabilidade e reutilização. Porém, mesmo com todas as boas características atribuídas ao desenvolvimento de componentes, é de extrema preocupação a forma como eles se compõem. Realizar verificação a partir de testes informais não é o suficiente para se ter uma composição segura, pois esses não possuem semântica formal que consiga prever comportamentos do sistema. Nesse contexto, surgem os métodos formais, que mantém com precisão a especificação do sistema através de notações matemáticas, trazendo, entre outros benefícios, mais segurança. O método formal CSP, possui uma semântica que suporta uma sucessão de verificações e comparações. Nesse contexto, existem abordagens que aplicam restrições usando CSP, para se verificar o comportamento da composição entre componentes, auxiliando a verificação desses componentes antecipadamente. No entanto, como a ideia atual do mercado de software é buscar cada vez mais automação dos processos, minimizando trabalhos e trazendo agilidade nos negócios, se torna inviável a utilização dessas abordagens, devido ao grande nível de complexidade e tempo. Nesse contexto, esse trabalho apresenta uma ferramenta automatizada para verificação da composição entre componentes, onde toda complexidade da linguagem formal é definida internamente, oculta para o usuário. Dessa forma, através de uma interface simples, a ferramenta BTS (BRIC-Tool-Suport) define um modelo para criação e composição de componentes, prevendo, com antecedência, comportamentos indesejáveis no sistema, como deadlocks.

Teses
1
  • EDUARDO SILVA PALMEIRA
  • On Extension of Fuzzy Connectives

  • Orientador : BENJAMIN RENE CALLEJAS BEDREGAL
  • MEMBROS DA BANCA :
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • GRAÇALIZ PEREIRA DIMURO
  • LAECIO CARVALHO DE BARROS
  • MARCUS PINTO DA COSTA DA ROCHA
  • REGIVAN HUGO NUNES SANTIAGO
  • Data: 22/02/2013

  • Mostrar Resumo
  • There are several operators related to fuzzy logic which in general are generalization of classical ones. For instance,  triangular norms and conorms (t-norms and t-conorms for short) generalize the operators ``and" and ``or" from classical logic. Considering that most of these fuzzy operators are in particular functions a natural question arises: Without loss of generality if we consider a  t-norm $T$ defined  on a sublattice $M$ of bounded lattice $L$ which satisfies a property $P$ is it possible (1) to extend $T$ to a function $T^E$ on $L$ in such way that $T^E$ is also  a t-norm  and (2) that property $P$ is preserved?\
    In this framework we present here two different methods for extending t-norms, t-conorms, fuzzy negations and implications (namely, extension via retractions and extension via e-operators) from a sublattice to a lattice considering a generalized notion of sub lattices. For both methods goal (1) is
    completely achieved, however extension via retractions fails in preserving some properties of these fuzzy connectives. Moreover, we prove some results involving extension and automorphisms,
    De Morgan triples and t-subnorms. Finally,  we present a study of extension of restricted equivalence functions.


  • Mostrar Abstract
  • There are several operators related to fuzzy logic which in general are generalization of classical ones. For instance,  triangular norms and conorms (t-norms and t-conorms for short) generalize the operators ``and" and ``or" from classical logic. Considering that most of these fuzzy operators are in particular functions a natural question arises: Without loss of generality if we consider a  t-norm $T$ defined  on a sublattice $M$ of bounded lattice $L$ which satisfies a property $P$ is it possible (1) to extend $T$ to a function $T^E$ on $L$ in such way that $T^E$ is also  a t-norm  and (2) that property $P$ is preserved?\
    In this framework we present here two different methods for extending t-norms, t-conorms, fuzzy negations and implications (namely, extension via retractions and extension via e-operators) from a sublattice to a lattice considering a generalized notion of sub lattices. For both methods goal (1) is
    completely achieved, however extension via retractions fails in preserving some properties of these fuzzy connectives. Moreover, we prove some results involving extension and automorphisms,
    De Morgan triples and t-subnorms. Finally,  we present a study of extension of restricted equivalence functions.

2
  • MACILON ARAÚJO COSTA NETO
  • Uma linguagem de modelagem da interação para auxiliar a comunicação designer-usuário 

  • Orientador : JAIR CAVALCANTI LEITE
  • MEMBROS DA BANCA :
  • BRUNO SANTANA DA SILVA
  • CLARISSE SIECKENIUS DE SOUZA
  • JAIR CAVALCANTI LEITE
  • LEONARDO CUNHA DE MIRANDA
  • MILENE SELBACH SILVEIRA
  • Data: 10/05/2013

  • Mostrar Resumo
  • O design da interação é uma atividade de fundamental importância para o desenvolvimento de sistemas interativos com um grau de usabilidade satisfatório. Isto porque, o modelo de interação descreve o diálogo entre o ser humano e a máquina, especificando onde e quando o usuário pode acionar as funções do sistema, selecionar ou inserir informações, como também, onde e quando o computador pode consultar e apresentar informações ao usuário. Este trabalho considera o modelo de interação: (a) um artefato de comunicação para todos os envolvidos no desenvol- vimento de um sistema interativo; (b) um meio termo, em nível de abstração, entre cenários e protótipos; (c) artefato que possibilita uma avaliação formativa da usabilidade e comunica- bilidade da interface de usuário. Dessa forma, com o propósito de contribuir com a tarefa de design de sistemas interativos sob estas perspectivas, aqui são apresentados uma linguagem de modelagem da interação, como ela pode ser usada para modelar os aspectos interativos dos pa- drões de interação, um método de inspeção de usabilidade para os modelos construídos nesta linguagem. Para avaliar se a linguagem traz os benefícios esperados, apresentamos um plano de estudo experimental. 


  • Mostrar Abstract
  • O design da interação é uma atividade de fundamental importância para o desenvolvimento de sistemas interativos com um grau de usabilidade satisfatório. Isto porque, o modelo de interação descreve o diálogo entre o ser humano e a máquina, especificando onde e quando o usuário pode acionar as funções do sistema, selecionar ou inserir informações, como também, onde e quando o computador pode consultar e apresentar informações ao usuário. Este trabalho considera o modelo de interação: (a) um artefato de comunicação para todos os envolvidos no desenvol- vimento de um sistema interativo; (b) um meio termo, em nível de abstração, entre cenários e protótipos; (c) artefato que possibilita uma avaliação formativa da usabilidade e comunica- bilidade da interface de usuário. Dessa forma, com o propósito de contribuir com a tarefa de design de sistemas interativos sob estas perspectivas, aqui são apresentados uma linguagem de modelagem da interação, como ela pode ser usada para modelar os aspectos interativos dos pa- drões de interação, um método de inspeção de usabilidade para os modelos construídos nesta linguagem. Para avaliar se a linguagem traz os benefícios esperados, apresentamos um plano de estudo experimental. 

3
  • FERNANDO PINTRO
  • Comitês de Classificadores para o Reconhecimento Multibiométrico em Dados Biométricos Revogáveis

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • MEMBROS DA BANCA :
  • ANNE MAGALY DE PAULA CANUTO
  • BRUNO MOTTA DE CARVALHO
  • MARJORY CRISTIANY DA COSTA ABREU
  • GEORGE DARMITON DA CUNHA CAVALCANTI
  • TERESA BERNARDA LUDERMIR
  • Data: 24/05/2013

  • Mostrar Resumo
  • O presente trabalho aborda aplicação de técnicas envolvendo comitês de classicadores
    no desenvolvimento de sistemas de reconhecimento multimodais em biometrias revogá-
    veis. Sistemas biométricos são o futuro eminente das técnicas de identicação e controle
    de acesso de usuários, prova disso, são os aumentos constantes de tais sistemas na sociedade
    atual. Porém, ainda existem muitos avanços a serem desenvolvidos, principalmente
    no que se refere à acurácia, segurança e tempo de processamento de tais sistemas. Na
    busca por desenvolver técnicas mais ecientes, os sistemas multimodais e a utilização de
    biometrias revogáveis mostram-se promissores, podendo contornar muitos dos problemas
    envolvidos no reconhecimento biométrico tradicional. Um sistema multimodal é caracterizado
    por combinar diferentes técnicas de segurança biométrica e com isso, superar muitas
    limitações. Dentre as várias possibilidades de se desenvolver um sistema multimodal, a
    utilização de comitês de classicadores é um assunto bastante promissor, motivado pelo
    desempenho e exibilidade que os mesmos vêm demonstrando ao longo dos anos, em suas
    inúmeras aplicações. Dando ênfase em relação à segurança, um dos maiores problemas
    encontrados se deve as biometrias estarem relacionadas permanentemente com o usuário
    e não poderem ser alteradas caso comprometidas. No entanto, esse problema vem sendo
    solucionado por técnicas conhecidas como biometrias canceláveis, as quais consistem em
    aplicar uma transformação sobre os dados biométricos de forma a proteger as características
    originais, possibilitando seu cancelamento e substituição. Com o objetivo de contribuir
    com esse importante tema, esse trabalho compara o desempenho de métodos de classica-
    ções individuais, bem como conjunto de classicadores, no contexto dos dados originais e
    no espaço biométrico transformado por diferentes funções. Outro fator a se destacar, é o
    uso de Algoritmos Genéticos (AGs) em diferentes partes dos sistemas, buscando maximizar
    ainda mais a eciência dos mesmos. Uma das motivações desse desenvolvimento é avaliar
    o ganho que os sistemas de comitês maximizados por diferentes estruturas de AGs podem
    trazer aos dados no espaço transformado. Também busca-se gerar sistemas canceláveis
    ainda mais ecientes através da combinação de duas ou mais funções de transformação revog
    áveis, demonstrando que é possível extrair informações complementares de um mesmo
    padrão através de tais procedimentos. Com tudo isso, espera-se provar a importância das
    biometrias revogáveis, comitês de classicadores e AGs, no desenvolvimento de sistemas
    biométricos mais ecientes, algo que se mostra cada vez mais importante nos dias atuais.


  • Mostrar Abstract
  • O presente trabalho aborda aplicação de técnicas envolvendo comitês de classicadores
    no desenvolvimento de sistemas de reconhecimento multimodais em biometrias revogá-
    veis. Sistemas biométricos são o futuro eminente das técnicas de identicação e controle
    de acesso de usuários, prova disso, são os aumentos constantes de tais sistemas na sociedade
    atual. Porém, ainda existem muitos avanços a serem desenvolvidos, principalmente
    no que se refere à acurácia, segurança e tempo de processamento de tais sistemas. Na
    busca por desenvolver técnicas mais ecientes, os sistemas multimodais e a utilização de
    biometrias revogáveis mostram-se promissores, podendo contornar muitos dos problemas
    envolvidos no reconhecimento biométrico tradicional. Um sistema multimodal é caracterizado
    por combinar diferentes técnicas de segurança biométrica e com isso, superar muitas
    limitações. Dentre as várias possibilidades de se desenvolver um sistema multimodal, a
    utilização de comitês de classicadores é um assunto bastante promissor, motivado pelo
    desempenho e exibilidade que os mesmos vêm demonstrando ao longo dos anos, em suas
    inúmeras aplicações. Dando ênfase em relação à segurança, um dos maiores problemas
    encontrados se deve as biometrias estarem relacionadas permanentemente com o usuário
    e não poderem ser alteradas caso comprometidas. No entanto, esse problema vem sendo
    solucionado por técnicas conhecidas como biometrias canceláveis, as quais consistem em
    aplicar uma transformação sobre os dados biométricos de forma a proteger as características
    originais, possibilitando seu cancelamento e substituição. Com o objetivo de contribuir
    com esse importante tema, esse trabalho compara o desempenho de métodos de classica-
    ções individuais, bem como conjunto de classicadores, no contexto dos dados originais e
    no espaço biométrico transformado por diferentes funções. Outro fator a se destacar, é o
    uso de Algoritmos Genéticos (AGs) em diferentes partes dos sistemas, buscando maximizar
    ainda mais a eciência dos mesmos. Uma das motivações desse desenvolvimento é avaliar
    o ganho que os sistemas de comitês maximizados por diferentes estruturas de AGs podem
    trazer aos dados no espaço transformado. Também busca-se gerar sistemas canceláveis
    ainda mais ecientes através da combinação de duas ou mais funções de transformação revog
    áveis, demonstrando que é possível extrair informações complementares de um mesmo
    padrão através de tais procedimentos. Com tudo isso, espera-se provar a importância das
    biometrias revogáveis, comitês de classicadores e AGs, no desenvolvimento de sistemas
    biométricos mais ecientes, algo que se mostra cada vez mais importante nos dias atuais.

4
  • FELLIPE ARAÚJO ALEIXO
  • Uma Abordagem Anotativa para Gerência de Variabilidades em Linhas de Processos de Software: Concepção, Implementação e Avaliação


  • Orientador : UIRA KULESZA
  • MEMBROS DA BANCA :
  • UIRA KULESZA
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • FERNANDO MARQUES FIGUEIRA FILHO
  • CLAUDIA MARIA LIMA WERNER
  • EDSON ALVES DE OLIVEIRA JUNIOR
  • Data: 19/08/2013

  • Mostrar Resumo
  • A indústria de software se encontra, nos dias de hoje, em um cenário altamente dinâmico, o qual reflete o mundo dos negócios e a sociedade como um todo. A demanda por sistemas de software é dessa forma cada vez mais crescente, e essa visa atender a diferentes domínios. Nesse cenário, onde sistemas de software complexos precisam ser desenvolvidos com um excelente nível de qualidade e consumindo a menor quantidade de recursos; aumenta a importância da definição de processos de software. Porém, tais processos necessitam ser devidamente adaptados aos contextos específicos de cada projeto, de forma a garantir a qualidade final do produto bem como o uso eficiente dos recursos disponíveis. Para que essa adaptação dos processos de software ocorra de forma eficiente é necessário promover a reutilização de especificações de processos já existentes, bem como experiências e práticas de sucesso passadas. Este trabalho explora a adoção de técnicas de engenharia de linha de produto de software de forma a promover a gerência de variabilidades de famílias de processos de software relacionadas. Para um melhor entendimento do domínio do problema foi realizada uma revisão sistemática da literatura, a qual identificou um conjunto de de abordagens para a gerência de variabilidades em processos de software e suas principais características. Em paralelo, foi realizada a proposta de uma abordagem anotativa para a gerência de variabilidades em processos de software, bem como um estudo exploratório visando a concretização dessa abordagem e a implementação de um protótipo de ferramenta para auxiliar na aplicação da mesma. A abordagem anotativa proposta foi então avaliada e comparada com uma abordagem composicional. Tais avaliações foram conduzidas através da realização de dois estudos empíricos. No primeiro estudo empírico as abordagens foram avaliadas: (i) qualitativamente – de acordo com um conjunto de critérios de análise da especificação de suas variabilidades; e (ii) quantitativamente através da comparação de valores obtidos para métricas de modularidade, tamanho e complexidade para as especificações de uma mesma linha de processo usando as abordagens anotativa e composicionais. O segundo estudo conduzido foi um experimento controlado cujo objetivo foi comparar as abordagens anotativa e composicional quando utilizadas na modelagem de variabilidades em cenários de definição e evolução de uma linha de processos de software. Os estudos evidenciaram diversos benefícios trazidos por abordagens anotativas no contexto de linhas de processo de software e seu potencial de integração com abordagens composicionais para auxiliar na modularização de suas variabilidades.


  • Mostrar Abstract
  • A indústria de software se encontra, nos dias de hoje, em um cenário altamente dinâmico, o qual reflete o mundo dos negócios e a sociedade como um todo. A demanda por sistemas de software é dessa forma cada vez mais crescente, e essa visa atender a diferentes domínios. Nesse cenário, onde sistemas de software complexos precisam ser desenvolvidos com um excelente nível de qualidade e consumindo a menor quantidade de recursos; aumenta a importância da definição de processos de software. Porém, tais processos necessitam ser devidamente adaptados aos contextos específicos de cada projeto, de forma a garantir a qualidade final do produto bem como o uso eficiente dos recursos disponíveis. Para que essa adaptação dos processos de software ocorra de forma eficiente é necessário promover a reutilização de especificações de processos já existentes, bem como experiências e práticas de sucesso passadas. Este trabalho explora a adoção de técnicas de engenharia de linha de produto de software de forma a promover a gerência de variabilidades de famílias de processos de software relacionadas. Para um melhor entendimento do domínio do problema foi realizada uma revisão sistemática da literatura, a qual identificou um conjunto de de abordagens para a gerência de variabilidades em processos de software e suas principais características. Em paralelo, foi realizada a proposta de uma abordagem anotativa para a gerência de variabilidades em processos de software, bem como um estudo exploratório visando a concretização dessa abordagem e a implementação de um protótipo de ferramenta para auxiliar na aplicação da mesma. A abordagem anotativa proposta foi então avaliada e comparada com uma abordagem composicional. Tais avaliações foram conduzidas através da realização de dois estudos empíricos. No primeiro estudo empírico as abordagens foram avaliadas: (i) qualitativamente – de acordo com um conjunto de critérios de análise da especificação de suas variabilidades; e (ii) quantitativamente através da comparação de valores obtidos para métricas de modularidade, tamanho e complexidade para as especificações de uma mesma linha de processo usando as abordagens anotativa e composicionais. O segundo estudo conduzido foi um experimento controlado cujo objetivo foi comparar as abordagens anotativa e composicional quando utilizadas na modelagem de variabilidades em cenários de definição e evolução de uma linha de processos de software. Os estudos evidenciaram diversos benefícios trazidos por abordagens anotativas no contexto de linhas de processo de software e seu potencial de integração com abordagens composicionais para auxiliar na modularização de suas variabilidades.

5
  • GIVANALDO ROCHA DE SOUZA
  • Arquitetura Multiagentes baseada em Nuvem de Partículas para Hibridização de Metaheurísticas

  • Orientador : ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MEMBROS DA BANCA :
  • ANNE MAGALY DE PAULA CANUTO
  • AURORA TRINIDAD RAMIREZ POZO
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • ILONEIDE CARLOS DE OLIVEIRA RAMOS
  • MARCO CESAR GOLDBARG
  • MYRIAM REGATTIERI DE BIASE DA SILVA DELGADO
  • Data: 25/10/2013

  • Mostrar Resumo
  • Esta tese propõe uma arquitetura multiagentes para hibridização de metaheurísticas, inspirada na técnica de Otimização por Nuvem de Partículas, e tem como principal contribuição a
    proposta de uma abordagem simples e efetiva para resolução de problemas de otimização com-binatória. A escolha da Otimização por Nuvem de Partículas como inspiração deu-se pelo fato
    desta técnica ser inerentemente multiagente, permitindo explorar todos os recursos dos sistemas
    multiagentes. Na abordagemproposta, as partículas são agentes autônomos com memória e métodos de decisão e aprendizagem, utilizando estratégias de busca para se moverem no espaço de
    soluções. Os conceitos de posição e velocidade, originalmente definidos na Otimização por Nuvem de Partículas, são redefinidos para esta abordagem. A abordagem proposta foi aplicada ao
    Problema do CaixeiroViajante e ao Problema Quadrático de Alocação, realizando experimentos
    computacionais para comprovar sua efetividade. Em pesquisa futuras, a abordagem proposta
    será também aplicada a problemas multiobjetivo, os quais são mais próximos a problemas do
    mundo real.


  • Mostrar Abstract
  • Esta tese propõe uma arquitetura multiagentes para hibridização de metaheurísticas, inspirada na técnica de Otimização por Nuvem de Partículas, e tem como principal contribuição a
    proposta de uma abordagem simples e efetiva para resolução de problemas de otimização com-binatória. A escolha da Otimização por Nuvem de Partículas como inspiração deu-se pelo fato
    desta técnica ser inerentemente multiagente, permitindo explorar todos os recursos dos sistemas
    multiagentes. Na abordagemproposta, as partículas são agentes autônomos com memória e métodos de decisão e aprendizagem, utilizando estratégias de busca para se moverem no espaço de
    soluções. Os conceitos de posição e velocidade, originalmente definidos na Otimização por Nuvem de Partículas, são redefinidos para esta abordagem. A abordagem proposta foi aplicada ao
    Problema do CaixeiroViajante e ao Problema Quadrático de Alocação, realizando experimentos
    computacionais para comprovar sua efetividade. Em pesquisa futuras, a abordagem proposta
    será também aplicada a problemas multiobjetivo, os quais são mais próximos a problemas do
    mundo real.

6
  • IVAN MEZZOMO
  • On Fuzzy Ideals and Fuzzy Filters of Fuzzy Lattices

  • Orientador : BENJAMIN RENE CALLEJAS BEDREGAL
  • MEMBROS DA BANCA :
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • CARLOS AUGUSTO PROLO
  • MARCOS EDUARDO RIBEIRO DO VALLE MESQUITA
  • REGIVAN HUGO NUNES SANTIAGO
  • RENATA HAX SANDER REISER
  • Data: 06/12/2013

  • Mostrar Resumo
  • In the literature there are several proposals of fuzzification of lattices and ideals concepts. Chon in (Korean J. Math 17 (2009), No. 4, 361-374), using the notion of fuzzy order relation defined by Zadeh, introduced a new notion of fuzzy lattice and studied the level sets of fuzzy lattices, but did not define a notion of fuzzy ideals for this type of fuzzy lattice.
    In this thesis, using the fuzzy lattices defined by Chon, we define fuzzy homomorphism between fuzzy lattices, the operations of product, collapsed sum, lifting, opposite, interval and intuitionistic on bounded fuzzy lattices. They are conceived as extensions of their analogous operations on  the classical theory by using this definition of fuzzy lattices and introduce new results from these operators.
    In addition, we define ideals and filters of fuzzy lattices and concepts in the same way that their characterization in terms of level and support sets. One of the results found here is the connection among ideals, supports and level sets. The reader will also find the definition of some kinds of ideals and filters as well as some results with respect to the intersection among their families.
    Moreover, we introduce a new notion of fuzzy ideals and fuzzy filters for fuzzy lattices defined by Chon. We define types of fuzzy ideals and fuzzy filters that generalize usual types of ideals and filters of lattice, such as principal ideals, proper ideals, prime ideals and maximal ideals. The main idea is verifying that analogous properties on the classical theory on lattices are maintained in this new theory of fuzzy ideals. We also define, a fuzzy homomorphism $h$ from fuzzy lattices $\mathcal{L}$ and $\mathcal{M}$ and prove some results involving fuzzy homomorphism and fuzzy ideals as if $h$ is a fuzzy monomorphism and the fuzzy image of a fuzzy set $\tilde h(I)$ is a fuzzy ideal, then $I$ is a fuzzy ideal. Similarly, we prove for proper, prime and maximal fuzzy ideals. Finally, we prove that $h$ is a fuzzy homomorphism from fuzzy lattices $\mathcal{L}$ into $\mathcal{M}$ if the inverse image of all principal fuzzy ideals of $\mathcal{M}$ is a fuzzy ideal of $\mathcal{L}$.
    Lastly, we introduce the notion of $\alpha$-ideals and $\alpha$-filters of fuzzy lattices and characterize it by using its support and its level set. Moreover, we prove some similar properties to the classical theory of $\alpha$-ideals and $\alpha$-filters, such as, the class of $\alpha$-ideals and $\alpha$-filters are closed under intersection. We also define fuzzy $\alpha$-ideals of fuzzy lattices and characterize a fuzzy $\alpha$-ideal on operation of product between bounded fuzzy lattices $\mathcal{L}$ and $\mathcal{M}$ and prove some results.

  • Mostrar Abstract
  • In the literature there are several proposals of fuzzification of lattices and ideals concepts. Chon in (Korean J. Math 17 (2009), No. 4, 361-374), using the notion of fuzzy order relation defined by Zadeh, introduced a new notion of fuzzy lattice and studied the level sets of fuzzy lattices, but did not define a notion of fuzzy ideals for this type of fuzzy lattice.
    In this thesis, using the fuzzy lattices defined by Chon, we define fuzzy homomorphism between fuzzy lattices, the operations of product, collapsed sum, lifting, opposite, interval and intuitionistic on bounded fuzzy lattices. They are conceived as extensions of their analogous operations on  the classical theory by using this definition of fuzzy lattices and introduce new results from these operators.
    In addition, we define ideals and filters of fuzzy lattices and concepts in the same way that their characterization in terms of level and support sets. One of the results found here is the connection among ideals, supports and level sets. The reader will also find the definition of some kinds of ideals and filters as well as some results with respect to the intersection among their families.
    Moreover, we introduce a new notion of fuzzy ideals and fuzzy filters for fuzzy lattices defined by Chon. We define types of fuzzy ideals and fuzzy filters that generalize usual types of ideals and filters of lattice, such as principal ideals, proper ideals, prime ideals and maximal ideals. The main idea is verifying that analogous properties on the classical theory on lattices are maintained in this new theory of fuzzy ideals. We also define, a fuzzy homomorphism $h$ from fuzzy lattices $\mathcal{L}$ and $\mathcal{M}$ and prove some results involving fuzzy homomorphism and fuzzy ideals as if $h$ is a fuzzy monomorphism and the fuzzy image of a fuzzy set $\tilde h(I)$ is a fuzzy ideal, then $I$ is a fuzzy ideal. Similarly, we prove for proper, prime and maximal fuzzy ideals. Finally, we prove that $h$ is a fuzzy homomorphism from fuzzy lattices $\mathcal{L}$ into $\mathcal{M}$ if the inverse image of all principal fuzzy ideals of $\mathcal{M}$ is a fuzzy ideal of $\mathcal{L}$.
    Lastly, we introduce the notion of $\alpha$-ideals and $\alpha$-filters of fuzzy lattices and characterize it by using its support and its level set. Moreover, we prove some similar properties to the classical theory of $\alpha$-ideals and $\alpha$-filters, such as, the class of $\alpha$-ideals and $\alpha$-filters are closed under intersection. We also define fuzzy $\alpha$-ideals of fuzzy lattices and characterize a fuzzy $\alpha$-ideal on operation of product between bounded fuzzy lattices $\mathcal{L}$ and $\mathcal{M}$ and prove some results.
7
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • O Problema Biobjetivo da Árvore Geradora Quadrática em Adjacência de Arestas

  • Orientador : ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MEMBROS DA BANCA :
  • ANDRÉ LUIÍS VASCONCELOS COELHO
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • LUCÍDIO DOS ANJOS FORMIGA CABRAL
  • MARCELO FERREIRA SIQUEIRA
  • MARCO CESAR GOLDBARG
  • Data: 16/12/2013

  • Mostrar Resumo
  • O problema da Árvore Geradora Mínima Quadrática (AGMQ) é uma versão da Árvore Geradora Mínima na qual se considera, além dos custos lineares tradicionais, uma estrutura de custos quadrática. Tal estrutura quadrática modela efeitos de interação entre pares de arestas. Os custos lineares e quadráticos são somados para compor o custo total da árvore geradora, que deve ser minimizado. Quando as interações são restritas às arestas adjacentes, o problema é denominado Árvore Geradora Mínima Quadrática em Adjacência de Arestas (AGMQA). A AGMQA e a AGMQ são problemas NP-difíceis que modelam diversos problemas de projeto de redes de transporte e distribuição. Em geral, a AGMQA emerge como um modelo mais apropriado para modelagem de problemas reais. Embora, na literatura, os custos lineares e quadráticos sejam somados, em aplicações reais, pode ser interessante considerar os custos separadamente. Neste sentido, a Otimização Multiobjetivo provê uma modelagem mais realista para os problemas de AGMQ e da AGMQA. Uma revisão do estado da arte, até o momento, não foi capaz de encontrar trabalhos no qual a natureza inerentemente biobjetiva destes problemas é considerada.    O objetivo desta tese é, pois, o desenvolvimento de algoritmos exatos e heurísticos para o problema da Árvore Geradora Quadrática Biobjetivo em Adjacência de Arestas (AGQA-bi). Para tanto, como fundamentação teórica, discutem-se outros problemas NP‑difíceis diretamente relacionados à AGQA-bi, a saber: AGMQA, Árvore Geradora Mínima Biobjetivo e Quadrático de Alocação. Algoritmos exatos backtracking, branch‑and‑bound e k-best são propostos para o problema-alvo desta investigação. Os algoritmos heurísticos desenvolvidos são: busca local Pareto Local Search, Algoritmo Transgenético, NSGA‑II, SPEA2, MOEA/D e suas respectivas hibridizações com algoritmos transgenéticos, a saber: NSTA, SPETA e MOTA/D. As abordagens evolucionárias mencionadas foram escolhidas devido aos resultados promissores em problemas relacionados à AGQA-bi. Além disso, NSGA-II, SPEA2 e MOEA/D são algoritmos evolucionários clássicos que apresentam bom desempenho para uma grande variedade de problemas. Os algoritmos propostos são comparados entre si por meio da análise de seus desempenhos em experimentos computacionais com casos de teste adaptados da literatura da AGMQ. No que se refere aos algoritmos exatos, a análise considera apenas o tempo de execução. No caso dos algoritmos heurísticos, além do tempo de execução, a qualidade do conjunto de aproximação gerado é avaliada. Indicadores de qualidade são empregados para aferir tal informação. Ferramentas estatísticas apropriadas são usadas na análise de desempenho dos algoritmos exatos e heurísticos.


  • Mostrar Abstract
  • O problema da Árvore Geradora Mínima Quadrática (AGMQ) é uma versão da Árvore Geradora Mínima na qual se considera, além dos custos lineares tradicionais, uma estrutura de custos quadrática. Tal estrutura quadrática modela efeitos de interação entre pares de arestas. Os custos lineares e quadráticos são somados para compor o custo total da árvore geradora, que deve ser minimizado. Quando as interações são restritas às arestas adjacentes, o problema é denominado Árvore Geradora Mínima Quadrática em Adjacência de Arestas (AGMQA). A AGMQA e a AGMQ são problemas NP-difíceis que modelam diversos problemas de projeto de redes de transporte e distribuição. Em geral, a AGMQA emerge como um modelo mais apropriado para modelagem de problemas reais. Embora, na literatura, os custos lineares e quadráticos sejam somados, em aplicações reais, pode ser interessante considerar os custos separadamente. Neste sentido, a Otimização Multiobjetivo provê uma modelagem mais realista para os problemas de AGMQ e da AGMQA. Uma revisão do estado da arte, até o momento, não foi capaz de encontrar trabalhos no qual a natureza inerentemente biobjetiva destes problemas é considerada.    O objetivo desta tese é, pois, o desenvolvimento de algoritmos exatos e heurísticos para o problema da Árvore Geradora Quadrática Biobjetivo em Adjacência de Arestas (AGQA-bi). Para tanto, como fundamentação teórica, discutem-se outros problemas NP‑difíceis diretamente relacionados à AGQA-bi, a saber: AGMQA, Árvore Geradora Mínima Biobjetivo e Quadrático de Alocação. Algoritmos exatos backtracking, branch‑and‑bound e k-best são propostos para o problema-alvo desta investigação. Os algoritmos heurísticos desenvolvidos são: busca local Pareto Local Search, Algoritmo Transgenético, NSGA‑II, SPEA2, MOEA/D e suas respectivas hibridizações com algoritmos transgenéticos, a saber: NSTA, SPETA e MOTA/D. As abordagens evolucionárias mencionadas foram escolhidas devido aos resultados promissores em problemas relacionados à AGQA-bi. Além disso, NSGA-II, SPEA2 e MOEA/D são algoritmos evolucionários clássicos que apresentam bom desempenho para uma grande variedade de problemas. Os algoritmos propostos são comparados entre si por meio da análise de seus desempenhos em experimentos computacionais com casos de teste adaptados da literatura da AGMQ. No que se refere aos algoritmos exatos, a análise considera apenas o tempo de execução. No caso dos algoritmos heurísticos, além do tempo de execução, a qualidade do conjunto de aproximação gerado é avaliada. Indicadores de qualidade são empregados para aferir tal informação. Ferramentas estatísticas apropriadas são usadas na análise de desempenho dos algoritmos exatos e heurísticos.

2012
Dissertações
1
  • KEIVILANY JANIELLE DE LIMA COELHO
  • Dos Requisitos à Arquitetura em Linhas de Produtos de Software: Uma Estratégia de Transformações entre Modelo

  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • LYRENE FERNANDES DA SILVA
  • SÉRGIO CASTELO BRANCO SOARES
  • THAIS VASCONCELOS BATISTA
  • Data: 06/02/2012

  • Mostrar Resumo
  • O rastreamento entre modelos das fases de requisitos e arquitetura é uma estratégia que busca evitar a perda de informações, reduzindo o gap entre essas duas fases iniciais do ciclo de vida do software. No contexto das Linhas de Produto de Software (LPS), é importante que haja um suporte a esse rastreamento, que permita a correspondência entre as duas atividades, com um gerenciamento satisfatório das variabilidades. Buscando atender a essa questão, este trabalho apresenta um processo de mapeamento bi-direcional, definindo regras de transformação entre elementos de modelo de requisitos orientado a objetivos (descrito em PL-AOVgraph) e elementos de descrição arquitetural (definida em PL-AspectualACME). A ferramenta MaRiPLA (Mapping Requirements to Product Line Architecture) automatiza essa transformação, que é implementada através de técnicas do desenvolvimento dirigido a modelos (Model-driven Development – MDD), incluindo a linguagem de transformações entre modelos Atlas Transformation Language (ATL) – com especificação de metamodelos do tipo Ecore –  em conjunto com os frameworks Xtext, de definição DSL, e Acceleo, de geração código, em ambiente Eclipse. As regras são validadas através de um estudo de caso, a LPS Ginga ForAll.


  • Mostrar Abstract
  • O rastreamento entre modelos das fases de requisitos e arquitetura é uma estratégia que busca evitar a perda de informações, reduzindo o gap entre essas duas fases iniciais do ciclo de vida do software. No contexto das Linhas de Produto de Software (LPS), é importante que haja um suporte a esse rastreamento, que permita a correspondência entre as duas atividades, com um gerenciamento satisfatório das variabilidades. Buscando atender a essa questão, este trabalho apresenta um processo de mapeamento bi-direcional, definindo regras de transformação entre elementos de modelo de requisitos orientado a objetivos (descrito em PL-AOVgraph) e elementos de descrição arquitetural (definida em PL-AspectualACME). A ferramenta MaRiPLA (Mapping Requirements to Product Line Architecture) automatiza essa transformação, que é implementada através de técnicas do desenvolvimento dirigido a modelos (Model-driven Development – MDD), incluindo a linguagem de transformações entre modelos Atlas Transformation Language (ATL) – com especificação de metamodelos do tipo Ecore –  em conjunto com os frameworks Xtext, de definição DSL, e Acceleo, de geração código, em ambiente Eclipse. As regras são validadas através de um estudo de caso, a LPS Ginga ForAll.

2
  • SIMONE DE OLIVEIRA SANTOS
  • KitSmart: Uma biblioteca de componentes para o desenvolvimento rigoroso de aplicações Java Card com o método B.

     

  • Orientador : ANAMARIA MARTINS MOREIRA
  • MEMBROS DA BANCA :
  • ANAMARIA MARTINS MOREIRA
  • DAVID BORIS PAUL DEHARBE
  • ROHIT GHEYI
  • Data: 10/02/2012

  • Mostrar Resumo
  • O desenvolvimento de aplicações para smart cards requer um alto grau de confiabilidade. Métodos formais fornecem meios para que esta confiabilidade seja alcançada. O método e a ferramenta BSmart fornecem uma contribuição para que o desenvolvimento para smart cards seja feito com o auxílio do método formal B, gerando código Java Card a partir de especificações B. Para que o desenvolvimento com o BSmart seja efetivamente rigoroso sem sobrecarregar o usuário do método é importante que haja uma biblioteca de componentes reutilizáveis feitos em B. O KitSmart tem como objetivo prover esse auxílio. Um primeiro estudo sobre a composição dessa biblioteca foi tema de uma monografia de graduação do curso de Bacharelado em Ciência da Computação da Universidade Federal do Rio Grande do Norte, feita por Thiago Dutra em 2006. Esta primeira versão do kit resultou na especificação dos tipos primitivos permitidos em Java Card (byte, short e booleano) e a idéia da criação de módulos adicionais para o desenvolvimento de aplicações. Esta dissertação provê o aperfeiçoamento do KitSmart com o acréscimo da especificação da API Java Card, módulos reutilizáveis para desenvolvimento em B, e um guia para o desenvolvimento de novos componentes. A API Java Card especificada em B, além de estar disponível para ser usada no desenvolvimento de projetos, serve como documentação ao especificar restrições de uso para cada classe da API. Os módulos reutilizáveis correspondem a componentes para manipulação de estruturas específicas como data e hora, por exemplo. Estes tipos de estruturas não estão disponíveis em B ou Java Card. Os módulos adicionais para Java Card são gerados a partir das especificações verificadas formalmente em B. O guia contém informações de consulta rápida para especificação de diversas estruturas e como algumas situações foram contornadas para adaptar a orientação a objetos ao Método B. Este kit deverá ser útil tanto para usuários do método B como para desenvolvedores de aplicações Java Card em geral.


  • Mostrar Abstract
  • O desenvolvimento de aplicações para smart cards requer um alto grau de confiabilidade. Métodos formais fornecem meios para que esta confiabilidade seja alcançada. O método e a ferramenta BSmart fornecem uma contribuição para que o desenvolvimento para smart cards seja feito com o auxílio do método formal B, gerando código Java Card a partir de especificações B. Para que o desenvolvimento com o BSmart seja efetivamente rigoroso sem sobrecarregar o usuário do método é importante que haja uma biblioteca de componentes reutilizáveis feitos em B. O KitSmart tem como objetivo prover esse auxílio. Um primeiro estudo sobre a composição dessa biblioteca foi tema de uma monografia de graduação do curso de Bacharelado em Ciência da Computação da Universidade Federal do Rio Grande do Norte, feita por Thiago Dutra em 2006. Esta primeira versão do kit resultou na especificação dos tipos primitivos permitidos em Java Card (byte, short e booleano) e a idéia da criação de módulos adicionais para o desenvolvimento de aplicações. Esta dissertação provê o aperfeiçoamento do KitSmart com o acréscimo da especificação da API Java Card, módulos reutilizáveis para desenvolvimento em B, e um guia para o desenvolvimento de novos componentes. A API Java Card especificada em B, além de estar disponível para ser usada no desenvolvimento de projetos, serve como documentação ao especificar restrições de uso para cada classe da API. Os módulos reutilizáveis correspondem a componentes para manipulação de estruturas específicas como data e hora, por exemplo. Estes tipos de estruturas não estão disponíveis em B ou Java Card. Os módulos adicionais para Java Card são gerados a partir das especificações verificadas formalmente em B. O guia contém informações de consulta rápida para especificação de diversas estruturas e como algumas situações foram contornadas para adaptar a orientação a objetos ao Método B. Este kit deverá ser útil tanto para usuários do método B como para desenvolvedores de aplicações Java Card em geral.

3
  • ERNESTO CID BRASIL DE MATOS
  • Uma Ferramenta para Geração de Testes de Unidade a partir de Especificações B

  • Orientador : ANAMARIA MARTINS MOREIRA
  • MEMBROS DA BANCA :
  • ANAMARIA MARTINS MOREIRA
  • ROBERTA DE SOUZA COELHO
  • PATRICIA DUARTE DE LIMA MACHADO
  • Data: 10/02/2012

  • Mostrar Resumo
  • Métodos formais e testes são ferramentas para obtenção e controle de qualidade de software. Quando utilizadas em conjunto, elas provem mecanismos para especificação passível de verificação e detecção de falhas em um software. Apesar de permitir que sistemas sejam matematicamente verificados, métodos formais não são suficientes pra garantir que um sistema esteja livre de falhas, logo, técnicas de teste de software são necessárias para completar o processo de verificação e validação de um sistema. Técnicas de Testes Baseados em Modelos permitem que testes sejam gerados a partir de outros artefatos de software como especificações e modelos abstratos. Ao utilizarmos especificações formais como base para a criação de testes, podemos gerar testes de melhor qualidade pois estas especificações costumam ser ricas em detalhes sobre seu funcionamento e livres de ambiguidade. Fernanda Souza (2010) propôs um método para definir casos de teste a partir de especificações do Método B. Este método utilizava informações do invariante de uma máquina e das pré-condições de uma operação para definir casos de teste positivos e negativos para tal operação, através de técnicas de particionamento de equivalência e análise de valor limite. No entanto, a proposta de 2010 não incluía automação e possuía algumas deficiências conceituais como, por exemplo, não se encaixar exatamente em uma classificação de critérios de cobertura bem definida. Iniciamos nosso trabalho com um estudo de caso que aplicou o método a um exemplo de especificação B proveniente da indústria. A partir deste estudo obtivemos subsídios para o aperfeiçoá-lo. Em nosso trabalho evoluímos método proposto, reescrevendo e adicionando características para torná-lo compatível com uma classificação de testes utilizada pela comunidade. Além disso, ele foi melhorado para suportar especificações estruturadas em vários componentes, utilizar informações do corpo da operação durante a criação de casos de teste e utilizar novos critérios de cobertura. Finalmente, implementamos uma ferramenta para automatizá-lo e o submetemos a estudos de caso mais complexos.


  • Mostrar Abstract
  • Métodos formais e testes são ferramentas para obtenção e controle de qualidade de software. Quando utilizadas em conjunto, elas provem mecanismos para especificação passível de verificação e detecção de falhas em um software. Apesar de permitir que sistemas sejam matematicamente verificados, métodos formais não são suficientes pra garantir que um sistema esteja livre de falhas, logo, técnicas de teste de software são necessárias para completar o processo de verificação e validação de um sistema. Técnicas de Testes Baseados em Modelos permitem que testes sejam gerados a partir de outros artefatos de software como especificações e modelos abstratos. Ao utilizarmos especificações formais como base para a criação de testes, podemos gerar testes de melhor qualidade pois estas especificações costumam ser ricas em detalhes sobre seu funcionamento e livres de ambiguidade. Fernanda Souza (2010) propôs um método para definir casos de teste a partir de especificações do Método B. Este método utilizava informações do invariante de uma máquina e das pré-condições de uma operação para definir casos de teste positivos e negativos para tal operação, através de técnicas de particionamento de equivalência e análise de valor limite. No entanto, a proposta de 2010 não incluía automação e possuía algumas deficiências conceituais como, por exemplo, não se encaixar exatamente em uma classificação de critérios de cobertura bem definida. Iniciamos nosso trabalho com um estudo de caso que aplicou o método a um exemplo de especificação B proveniente da indústria. A partir deste estudo obtivemos subsídios para o aperfeiçoá-lo. Em nosso trabalho evoluímos método proposto, reescrevendo e adicionando características para torná-lo compatível com uma classificação de testes utilizada pela comunidade. Além disso, ele foi melhorado para suportar especificações estruturadas em vários componentes, utilizar informações do corpo da operação durante a criação de casos de teste e utilizar novos critérios de cobertura. Finalmente, implementamos uma ferramenta para automatizá-lo e o submetemos a estudos de caso mais complexos.

4
  • CLAUDIO ANDRES CALLEJAS OLGUIN
  • What is a fuzzy bi-implication?

  • Orientador : BENJAMIN RENE CALLEJAS BEDREGAL
  • MEMBROS DA BANCA :
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • JOAO MARCOS DE ALMEIDA
  • REGIVAN HUGO NUNES SANTIAGO
  • JORGE PETRUCIO VIANA
  • Data: 13/02/2012

  • Mostrar Resumo
  • we dedicated the first chapter to exhibit in detail what motivated us,
    how we justify this work and which are the boundaries that this dissertation
    embraces.
    
    In order to make this document self-contained, we first present all the
    necessary theory as a background. Then we study several definitions that
    extended the classic bi-implication in to the domain of well stablished fuzzy
    logics, namely, into the [0, 1] interval. Those approaches of the fuzzy bi-implication
    can be summarized as follows: two axiomatized definitions, which we
    proved that represent the same class of functions, four defining standard (two of them
    proposed by us), which varied by the number of different compound operators and what
    restrictions they had to satisfy. We proved that those defining standard
    represent only two classes of functions, having one as a proper subclass of the other,
    yet being both a proper subclass of the class represented by the axiomatized
    definitions.
    Since those three clases satisfy some contraints that we judge
    unnecessary, we proposed a new defining standard free of those restrictions and that
    represents a class of functions that intersects with the class represented by the
    axiomatized definitions.
    
    By this dissertation we are aiming to settle the groundwork for future
    research on this operator in what we believe is an area that has to much
    mature.

  • Mostrar Abstract
  • we dedicated the first chapter to exhibit in detail what motivated us,
    how we justify this work and which are the boundaries that this dissertation
    embraces.
    
    In order to make this document self-contained, we first present all the
    necessary theory as a background. Then we study several definitions that
    extended the classic bi-implication in to the domain of well stablished fuzzy
    logics, namely, into the [0, 1] interval. Those approaches of the fuzzy bi-implication
    can be summarized as follows: two axiomatized definitions, which we
    proved that represent the same class of functions, four defining standard (two of them
    proposed by us), which varied by the number of different compound operators and what
    restrictions they had to satisfy. We proved that those defining standard
    represent only two classes of functions, having one as a proper subclass of the other,
    yet being both a proper subclass of the class represented by the axiomatized
    definitions.
    Since those three clases satisfy some contraints that we judge
    unnecessary, we proposed a new defining standard free of those restrictions and that
    represents a class of functions that intersects with the class represented by the
    axiomatized definitions.
    
    By this dissertation we are aiming to settle the groundwork for future
    research on this operator in what we believe is an area that has to much
    mature.
5
  • MARCIANO LOURENÇO DA SILVA GONÇALVES
  • Java-XSC: Módulo Complexo Intervalar

  • Orientador : REGIVAN HUGO NUNES SANTIAGO
  • MEMBROS DA BANCA :
  • REGIVAN HUGO NUNES SANTIAGO
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • GIBEON SOARES DE AQUINO JUNIOR
  • MARILTON SANCHONETE DE AGUIAR
  • Data: 23/02/2012

  • Mostrar Resumo
  • Neste trabalho apresenta-se uma proposta de extensão da linguagem JAVA para suportar o processamento numérico de problemas que envolvam números complexos e suas representações intervalares. A implementação utiliza a biblioteca J-Float afim de implementar os arredondamentos direcionados não suportados em Java.


  • Mostrar Abstract
  • Neste trabalho apresenta-se uma proposta de extensão da linguagem JAVA para suportar o processamento numérico de problemas que envolvam números complexos e suas representações intervalares. A implementação utiliza a biblioteca J-Float afim de implementar os arredondamentos direcionados não suportados em Java.

6
  • GUSTAVO DE ARAUJO SABRY
  • Um Estudo Algorítmico da Programação da Intervenção de Sondas de Produção

  • Orientador : MARCO CESAR GOLDBARG
  • MEMBROS DA BANCA :
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • ILONEIDE CARLOS DE OLIVEIRA RAMOS
  • MARCO CESAR GOLDBARG
  • MARCONE JAMILSON FREITAS SOUZA
  • Data: 27/02/2012

  • Mostrar Resumo
  • O trabalho em questão aborda o problema da programação do atendimento da frota de sondas de produção aos poços de um campo de petróleo, embora de difícil resolução, é de extrema importância econômica, técnica e ambiental. Uma formulação matemática deste problema é apresentada, onde uma abordagem algorítmica foi desenvolvida. O problema abordado pode ser considerado como o de encontrar o melhor escalonamento de atendimento aos poços pelas sondas, levando em consideração que em consideração o custo do deslocamento realizado, de forma a minimizar a perda total da produção de petróleo associada aos poços que estão aguardando por atendimento. Tal problema assemelha-se com o Problema de Roteamento de Veículos (PRV), que é classificado como pertencente à classe de problemas NP-Difícil. O objetivo da presente pesquisa é desenvolver uma abordagem algorítmica para resolvê-lo, utilizando os fundamentos do Algoritmo Memético. Instâncias são geradas para a realização dos testes computacionais para análise do desempenho das abordagens acima citadas, utilizando dados que se aproximam da realidade. Propõe-se também para trabalhos futuros o desenvolvimento de um algoritmo GRASP, possibilitando assim uma comparação de desempenho e qualidade dos resultados obtidos.


  • Mostrar Abstract
  • O trabalho em questão aborda o problema da programação do atendimento da frota de sondas de produção aos poços de um campo de petróleo, embora de difícil resolução, é de extrema importância econômica, técnica e ambiental. Uma formulação matemática deste problema é apresentada, onde uma abordagem algorítmica foi desenvolvida. O problema abordado pode ser considerado como o de encontrar o melhor escalonamento de atendimento aos poços pelas sondas, levando em consideração que em consideração o custo do deslocamento realizado, de forma a minimizar a perda total da produção de petróleo associada aos poços que estão aguardando por atendimento. Tal problema assemelha-se com o Problema de Roteamento de Veículos (PRV), que é classificado como pertencente à classe de problemas NP-Difícil. O objetivo da presente pesquisa é desenvolver uma abordagem algorítmica para resolvê-lo, utilizando os fundamentos do Algoritmo Memético. Instâncias são geradas para a realização dos testes computacionais para análise do desempenho das abordagens acima citadas, utilizando dados que se aproximam da realidade. Propõe-se também para trabalhos futuros o desenvolvimento de um algoritmo GRASP, possibilitando assim uma comparação de desempenho e qualidade dos resultados obtidos.

7
  • EDMILSON FRANK MACHADO OLIVEIRA JÚNIOR
  • Aplicação do Algoritmo de Otimização por Colônia de Formigas na Solução do Problema do Passeio do Robô Seletivo

  • Orientador : MARCO CESAR GOLDBARG
  • MEMBROS DA BANCA :
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • ILONEIDE CARLOS DE OLIVEIRA RAMOS
  • MARCO CESAR GOLDBARG
  • MARCONE JAMILSON FREITAS SOUZA
  • Data: 27/02/2012

  • Mostrar Resumo
  • O trabalho tem por objetivo propor um Algoritmo em Colônia de Formigas para a Solução do Problema do Passeio do Robô Seletivo. No trabalho são também desenvolvidos algoritmos GRASP - Greedy Randomized Adaptative Procedure e Algoritmos em Vizinhança Variável para ancorar os resultados do algoritmos proposto. Um experimento computacional é relatado e conclusções são apresentadas. 


  • Mostrar Abstract
  • O trabalho tem por objetivo propor um Algoritmo em Colônia de Formigas para a Solução do Problema do Passeio do Robô Seletivo. No trabalho são também desenvolvidos algoritmos GRASP - Greedy Randomized Adaptative Procedure e Algoritmos em Vizinhança Variável para ancorar os resultados do algoritmos proposto. Um experimento computacional é relatado e conclusções são apresentadas. 

8
  • PHILIP MICHEL DUARTE
  • Geração Procedural de Cenários Orientada a Objetivos

  • Orientador : SELAN RODRIGUES DOS SANTOS
  • MEMBROS DA BANCA :
  • ANDRE MAURICIO CUNHA CAMPOS
  • JAUVANE CAVALCANTE DE OLIVEIRA
  • SELAN RODRIGUES DOS SANTOS
  • Data: 27/02/2012

  • Mostrar Resumo
  • A indústria de jogos vem experimentando um aumento consistente nos custos de produção de jogos recentemente. Parte deste aumento é referente à tendência atual de ter-se ambientes cada vez maiores, mais interativos e rejogáveis. Esta tendência se reflete num aumento das equipes e do tempo de desenvolvimento, o que torna o desenvolvimento de jogos um investimento de risco e pode reduzir a inovação na área. Como uma possível solução para este problema, a comunidade científica vem apostando na geração procedural de conteúdo e, mais especificamente, na geração procedural de cenários. Dada a grande diversidade e complexidade dos jogos, a maioria dos trabalhos opta por trabalhar em gêneros específicos, sendo os jogos de plataforma um dos gêneros mais estudados. Este trabalho visa propor um método de geração de cenários para jogos de plataforma/aventura, um gênero mais complexo que jogos de plataforma clássicos e que até o momento não foi alvo de estudo de outros trabalhos.


  • Mostrar Abstract
  • A indústria de jogos vem experimentando um aumento consistente nos custos de produção de jogos recentemente. Parte deste aumento é referente à tendência atual de ter-se ambientes cada vez maiores, mais interativos e rejogáveis. Esta tendência se reflete num aumento das equipes e do tempo de desenvolvimento, o que torna o desenvolvimento de jogos um investimento de risco e pode reduzir a inovação na área. Como uma possível solução para este problema, a comunidade científica vem apostando na geração procedural de conteúdo e, mais especificamente, na geração procedural de cenários. Dada a grande diversidade e complexidade dos jogos, a maioria dos trabalhos opta por trabalhar em gêneros específicos, sendo os jogos de plataforma um dos gêneros mais estudados. Este trabalho visa propor um método de geração de cenários para jogos de plataforma/aventura, um gênero mais complexo que jogos de plataforma clássicos e que até o momento não foi alvo de estudo de outros trabalhos.

9
  • PATRÍCIA MEDYNA LAURITZEN DE LUCENA DRUMOND
  • Uma Análise Experimental de Algoritmos Exatos Aplicados ao Problema da Árvore Geradora Multiobjetivo

  • Orientador : ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MEMBROS DA BANCA :
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • ILONEIDE CARLOS DE OLIVEIRA RAMOS
  • JOÃO XAVIER DA CRUZ NETO
  • MARCELO FERREIRA SIQUEIRA
  • MARCO CESAR GOLDBARG
  • Data: 05/03/2012

  • Mostrar Resumo
  • O Problema da Árvore Geradora Multiobjetivo (AGMO) é uma extensão natural do problema do Problema da Árvore Geradora Mínima com único objetivo. O problema é NP‑árduo e possui aplicação em diversas áreas, por exemplo, no projeto de redes de comunicação. O trabalho apresenta uma análise experimental das diferentes estratégias de algoritmos exatos encontrados na literatura para resolver o problema. As abordagens consideradas para a análise experimental compreendem dois algoritmos utilizando o método duas fases, que diferem apenas na fase 2, um método Branch-and-Bound e duas abordagens baseada em preferências, utilizando os algoritmos de Prim e Kruskal e as integrais de Choquet. Os experimentos computacionais abrangem a comparação do desempenho dos algoritmos levando-se em consideração o tempo de execução, sua eficiência em função do número de objetivos e a quantidade de soluções encontradas em determinado tempo. Para verificar as diferentes abordagens foi investigado o desempenho dos algoritmos em três tipos de instâncias propostas na literatura.


  • Mostrar Abstract
  • O Problema da Árvore Geradora Multiobjetivo (AGMO) é uma extensão natural do problema do Problema da Árvore Geradora Mínima com único objetivo. O problema é NP‑árduo e possui aplicação em diversas áreas, por exemplo, no projeto de redes de comunicação. O trabalho apresenta uma análise experimental das diferentes estratégias de algoritmos exatos encontrados na literatura para resolver o problema. As abordagens consideradas para a análise experimental compreendem dois algoritmos utilizando o método duas fases, que diferem apenas na fase 2, um método Branch-and-Bound e duas abordagens baseada em preferências, utilizando os algoritmos de Prim e Kruskal e as integrais de Choquet. Os experimentos computacionais abrangem a comparação do desempenho dos algoritmos levando-se em consideração o tempo de execução, sua eficiência em função do número de objetivos e a quantidade de soluções encontradas em determinado tempo. Para verificar as diferentes abordagens foi investigado o desempenho dos algoritmos em três tipos de instâncias propostas na literatura.

10
  • IVAN SOARES DE MEDEIROS JUNIOR
  • Geração automática de hardware a partir de especificações formais: Estendendo uma abordagem de tradução 

  • Orientador : MARCEL VINICIUS MEDEIROS OLIVEIRA
  • MEMBROS DA BANCA :
  • ALEXANDRE CABRAL MOTA
  • MARCEL VINICIUS MEDEIROS OLIVEIRA
  • MARCIO EDUARDO KREUTZ
  • Data: 27/04/2012

  • Mostrar Resumo
  • A remoção de inconsistências em um projeto é menos custosa quando realizadas nas etapas iniciais da sua concepção. A utilização de Métodos Formais melhora a compreensão dos sistemas além de possuir diversas técnicas, como a especificação e verificação formal, para identificar essas inconsistências nas etapas iniciais de um projeto. Porém, a transformação de uma especificação formal para uma linguagem de programação é uma tarefa não trivial. Quando feita manualmente, é uma tarefa passível da inserção de erros. O uso de ferramentas que auxiliem esta etapa pode proporcionar grandes benefícios ao produto final a ser desenvolvido.
    Este trabalho propõe a extensão de uma ferramenta cujo foco é a tradução automática de especificações em CSPm para Handel-C. CSP é uma linguagem de descrição formal adequada para trabalhar com sistemas concorrentes. Handel-C é uma linguagem de programação cujo resultado pode ser compilado diretamente para FPGA's. A extensão consiste no aumento no número de operadores CSPm aceitos pela ferramenta, permitindo ao usuário definir processos locais, renomear canais e utilizar guarda booleana em escolhas externas. Além disto, propomos também a implementação de um protocolo de comunicação que elimina algumas restrições da composição paralela de processos na tradução para Handel-C, permitindo que a comunicação entre múltiplos processos possa ser mapeada de maneira consistente e que a mesma somente ocorra quando for autorizada.
    A remoção de inconsistências em um projeto é menos custosa quando realizadas nas etapas iniciais da sua concepção. A utilização de Métodos Formais melhora a compreensão dos sistemas além de possuir diversas técnicas, como a especificação e verificação formal, para identificar essas inconsistências nas etapas iniciais de um projeto. Porém, a transformação de uma especificação formal para uma linguagem de programação é uma tarefa não trivial. Quando feita manualmente, é uma tarefa passível da inserção de erros. O uso de ferramentas que auxiliem esta etapa pode proporcionar grandes benefícios ao produto final a ser desenvolvido.
    Este trabalho propõe a extensão de uma ferramenta cujo foco é a tradução automática de especificações em CSPm para Handel-C. CSP é uma linguagem de descrição formal adequada para trabalhar com sistemas concorrentes. Handel-C é uma linguagem de programação cujo resultado pode ser compilado diretamente para FPGA's. A extensão consiste no aumento no número de operadores CSPm aceitos pela ferramenta, permitindo ao usuário definir processos locais, renomear canais e utilizar guarda booleana em escolhas externas. Além disto, propomos também a implementação de um protocolo de comunicação que elimina algumas restrições da composição paralela de processos na tradução para Handel-C, permitindo que a comunicação entre múltiplos processos possa ser mapeada de maneira consistente e que a mesma somente ocorra quando for autorizada.


  • Mostrar Abstract
  • A remoção de inconsistências em um projeto é menos custosa quando realizadas nas etapas iniciais da sua concepção. A utilização de Métodos Formais melhora a compreensão dos sistemas além de possuir diversas técnicas, como a especificação e verificação formal, para identificar essas inconsistências nas etapas iniciais de um projeto. Porém, a transformação de uma especificação formal para uma linguagem de programação é uma tarefa não trivial. Quando feita manualmente, é uma tarefa passível da inserção de erros. O uso de ferramentas que auxiliem esta etapa pode proporcionar grandes benefícios ao produto final a ser desenvolvido.
    Este trabalho propõe a extensão de uma ferramenta cujo foco é a tradução automática de especificações em CSPm para Handel-C. CSP é uma linguagem de descrição formal adequada para trabalhar com sistemas concorrentes. Handel-C é uma linguagem de programação cujo resultado pode ser compilado diretamente para FPGA's. A extensão consiste no aumento no número de operadores CSPm aceitos pela ferramenta, permitindo ao usuário definir processos locais, renomear canais e utilizar guarda booleana em escolhas externas. Além disto, propomos também a implementação de um protocolo de comunicação que elimina algumas restrições da composição paralela de processos na tradução para Handel-C, permitindo que a comunicação entre múltiplos processos possa ser mapeada de maneira consistente e que a mesma somente ocorra quando for autorizada.
    A remoção de inconsistências em um projeto é menos custosa quando realizadas nas etapas iniciais da sua concepção. A utilização de Métodos Formais melhora a compreensão dos sistemas além de possuir diversas técnicas, como a especificação e verificação formal, para identificar essas inconsistências nas etapas iniciais de um projeto. Porém, a transformação de uma especificação formal para uma linguagem de programação é uma tarefa não trivial. Quando feita manualmente, é uma tarefa passível da inserção de erros. O uso de ferramentas que auxiliem esta etapa pode proporcionar grandes benefícios ao produto final a ser desenvolvido.
    Este trabalho propõe a extensão de uma ferramenta cujo foco é a tradução automática de especificações em CSPm para Handel-C. CSP é uma linguagem de descrição formal adequada para trabalhar com sistemas concorrentes. Handel-C é uma linguagem de programação cujo resultado pode ser compilado diretamente para FPGA's. A extensão consiste no aumento no número de operadores CSPm aceitos pela ferramenta, permitindo ao usuário definir processos locais, renomear canais e utilizar guarda booleana em escolhas externas. Além disto, propomos também a implementação de um protocolo de comunicação que elimina algumas restrições da composição paralela de processos na tradução para Handel-C, permitindo que a comunicação entre múltiplos processos possa ser mapeada de maneira consistente e que a mesma somente ocorra quando for autorizada.

11
  • REGINA ROSA PARENTE
  • Abordagem de Construção de Arquitetura Homogenea para Comites via meta-aprendizagem

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • MEMBROS DA BANCA :
  • ANNE MAGALY DE PAULA CANUTO
  • ANDRE MAURICIO CUNHA CAMPOS
  • RICARDO BASTOS CAVALCANTE PRUDÊNCIO
  • Data: 21/05/2012

  • Mostrar Resumo
  • Essa dissertação tem como objetivo principal a investigação dos melhores parametros de configuração da arquitetura de comites de classificadores via meta-aprendizagem aplicados a problemas diversos de classificação de padrões.


  • Mostrar Abstract
  • Essa dissertação tem como objetivo principal a investigação dos melhores parametros de configuração da arquitetura de comites de classificadores via meta-aprendizagem aplicados a problemas diversos de classificação de padrões.

12
  • LIDIANE OLIVEIRA DOS SANTOS
  • ReqSys-MDD: Uma Ferramenta para Mapeamento entre Modelos de Features e Requisitos em Linhas de Produtos de Software

  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • LYRENE FERNANDES DA SILVA
  • SÉRGIO CASTELO BRANCO SOARES
  • THAIS VASCONCELOS BATISTA
  • Data: 23/05/2012

  • Mostrar Resumo
  • A abordagem de Linha de Produto de Software (LPS) tem se mostrado bastante promissora, uma vez que permite a produção de sistemas customizados em larga escala, através de famílias de produtos. Para a modelagem destas famílias o Modelo de Features tem sido muito utilizado, no entanto, trata-se de um modelo que apresenta baixo nível de detalhamento, podendo não ser suficiente para orientar a equipe de desenvolvimento da LPS. Dessa forma, é recomendável agregar o Modelo de Features a outros modelos que representem o sistema sob outras perspectivas. O Modelo de Metas PL-AOVgraph pode assumir esta função complementar ao Modelo de Features, uma vez que possui uma linguagem voltada para o contexto das LPS’s, que permite a modelagem de requisitos de forma detalhada e a identificação de características transversais, que podem surgir em decorrência da variabilidade. Com o objetivo de inserir PL-AOVgraph no processo de desenvolvimento das LPS’s, este trabalho apresenta: (i) um mapeamento bi-direcional entre PL-AOVgraph e Modelo de Features, (ii) uma ferramenta,  ReqSys-MDD, que automatiza esse mapeamento. Esta ferramenta utiliza a abordagem de Desenvolvimento Orientado a Modelos (Model-Driven Development – MDD), permitindo a construção de sistemas a partir de modelos de alto nível, através de transformações sucessivas. Isto possibilita a integração de ReqSys-MDD com outras ferramentas MDD que utilizem seus modelos de saída como entrada para outras transformações. Assim, é possível manter a consistência entre os modelos envolvidos, evitando a perda de informações nas transições entre as etapas de desenvolvimento. De forma a avaliar as regras de mapeamento e a ferramenta ReqSys-MDD, esse trabalho usa um estudo de caso, o Smart Home (Sánchez et al, 2007), e apresenta os resultados de uma sequência de transformações envolvendo a especificação PL-AOVgraph e o Modelo de Features desse estudo de caso. Para avaliação do ReqSys-MDD foi aplicado um experimento controlado, onde alunos de graduação e pós-graduação utilizaram a ferramenta. Os resultados desses experimentos são relatados e discutidos nessa dissertação.

     

  • Mostrar Abstract
  • A abordagem de Linha de Produto de Software (LPS) tem se mostrado bastante promissora, uma vez que permite a produção de sistemas customizados em larga escala, através de famílias de produtos. Para a modelagem destas famílias o Modelo de Features tem sido muito utilizado, no entanto, trata-se de um modelo que apresenta baixo nível de detalhamento, podendo não ser suficiente para orientar a equipe de desenvolvimento da LPS. Dessa forma, é recomendável agregar o Modelo de Features a outros modelos que representem o sistema sob outras perspectivas. O Modelo de Metas PL-AOVgraph pode assumir esta função complementar ao Modelo de Features, uma vez que possui uma linguagem voltada para o contexto das LPS’s, que permite a modelagem de requisitos de forma detalhada e a identificação de características transversais, que podem surgir em decorrência da variabilidade. Com o objetivo de inserir PL-AOVgraph no processo de desenvolvimento das LPS’s, este trabalho apresenta: (i) um mapeamento bi-direcional entre PL-AOVgraph e Modelo de Features, (ii) uma ferramenta,  ReqSys-MDD, que automatiza esse mapeamento. Esta ferramenta utiliza a abordagem de Desenvolvimento Orientado a Modelos (Model-Driven Development – MDD), permitindo a construção de sistemas a partir de modelos de alto nível, através de transformações sucessivas. Isto possibilita a integração de ReqSys-MDD com outras ferramentas MDD que utilizem seus modelos de saída como entrada para outras transformações. Assim, é possível manter a consistência entre os modelos envolvidos, evitando a perda de informações nas transições entre as etapas de desenvolvimento. De forma a avaliar as regras de mapeamento e a ferramenta ReqSys-MDD, esse trabalho usa um estudo de caso, o Smart Home (Sánchez et al, 2007), e apresenta os resultados de uma sequência de transformações envolvendo a especificação PL-AOVgraph e o Modelo de Features desse estudo de caso. Para avaliação do ReqSys-MDD foi aplicado um experimento controlado, onde alunos de graduação e pós-graduação utilizaram a ferramenta. Os resultados desses experimentos são relatados e discutidos nessa dissertação.

     
13
  • ALEXANDRE STRAPACAO GUEDES VIANNA
  • Squid Impact Analyzer: Uma Ferramenta de Análise de Impacto de Mudanças para Linhas de Produto de Software

  • Orientador : UIRA KULESZA
  • MEMBROS DA BANCA :
  • UIRA KULESZA
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • ROBERTA DE SOUZA COELHO
  • DALTON DARIO SEREY GUERRERO
  • Data: 25/05/2012

  • Mostrar Resumo
  • Linhas  de  Produtos  de  Software  (LPS)  consiste  em  um  paradigma  de  desenvolvimento  de  software, no qual famílias  de  sistemas  compartilham  características comuns  e  tornam  explícitas  outras  características  que  variam  de  acordo  com  o  sistema  final  sendo  considerado.  Esta  abordagem  oferece  benefícios  ao  desenvolvimento  de  software  como  redução  de  custos,  qualidade  do  produto  final,  produtividade  e  tempo  de  desenvolvimento  reduzido.  Por  outro  lado,  a  abordagem impõe  novos  desafios  para  a  atividade  de  evolução  dos  artefatos  que  modelam  e  implementam  a  LPS.  Trabalhos  de  pesquisa  recentes  propõem  abordagens com  suporte  automatizado  de  ferramentas  de  análise  de  impacto  de mudança  no  contexto  de  evolução  de  LPSs. Tais  abordagens  são baseadas  em  técnicas  de  análise  de  impacto  de mudanças  e  rastreabilidade  de  artefatos, porém apresentam  limitações quanto à análise de  impacto de mudanças em variabilidades de granularidade fina e à customização  dos  tipos e estratégias de análise  realizadas. Esta dissertação propõe uma  ferramenta de análise de  impacto de mudança, denominada  Squid Impact  Analyzer,  que  utiliza  uma  estratégia  de  estimativa  de  impacto  baseada  em informações de variabilidades, mapeamento de  tais variabilidades em artefatos de código, e dependência existente entre artefatos de implementação. A ferramenta é avaliada através da elaboração de estudos de caso que realizam a quantificação de métricas de cobertura e precisão  nos  resultados  de  buscas  de  análise  de  impacto  de  mudança  da  ferramenta proposta  em  contraposição  à mudanças  reais  realizadas  nos  artefatos  de  diversas  versões de  evolução  de  uma  LPS  para  gerenciamento  de  mídias  em  dispositivos  móveis.  A ferramenta  foi  desenvolvida  com  base  em  uma  infraestrutura  que  serve  de  base  para  a  instanciação  de  ferramentas  de  análise  de  propriedades  de  código  de  LPSs,  e  que é também parte da contribuição da dissertação. 


  • Mostrar Abstract
  • Linhas  de  Produtos  de  Software  (LPS)  consiste  em  um  paradigma  de  desenvolvimento  de  software, no qual famílias  de  sistemas  compartilham  características comuns  e  tornam  explícitas  outras  características  que  variam  de  acordo  com  o  sistema  final  sendo  considerado.  Esta  abordagem  oferece  benefícios  ao  desenvolvimento  de  software  como  redução  de  custos,  qualidade  do  produto  final,  produtividade  e  tempo  de  desenvolvimento  reduzido.  Por  outro  lado,  a  abordagem impõe  novos  desafios  para  a  atividade  de  evolução  dos  artefatos  que  modelam  e  implementam  a  LPS.  Trabalhos  de  pesquisa  recentes  propõem  abordagens com  suporte  automatizado  de  ferramentas  de  análise  de  impacto  de mudança  no  contexto  de  evolução  de  LPSs. Tais  abordagens  são baseadas  em  técnicas  de  análise  de  impacto  de mudanças  e  rastreabilidade  de  artefatos, porém apresentam  limitações quanto à análise de  impacto de mudanças em variabilidades de granularidade fina e à customização  dos  tipos e estratégias de análise  realizadas. Esta dissertação propõe uma  ferramenta de análise de  impacto de mudança, denominada  Squid Impact  Analyzer,  que  utiliza  uma  estratégia  de  estimativa  de  impacto  baseada  em informações de variabilidades, mapeamento de  tais variabilidades em artefatos de código, e dependência existente entre artefatos de implementação. A ferramenta é avaliada através da elaboração de estudos de caso que realizam a quantificação de métricas de cobertura e precisão  nos  resultados  de  buscas  de  análise  de  impacto  de  mudança  da  ferramenta proposta  em  contraposição  à mudanças  reais  realizadas  nos  artefatos  de  diversas  versões de  evolução  de  uma  LPS  para  gerenciamento  de  mídias  em  dispositivos  móveis.  A ferramenta  foi  desenvolvida  com  base  em  uma  infraestrutura  que  serve  de  base  para  a  instanciação  de  ferramentas  de  análise  de  propriedades  de  código  de  LPSs,  e  que é também parte da contribuição da dissertação. 

14
  • HUGO FARIA MELO
  • Caracterizando Fluxos Excepcionais em Linhas de Produto de Software

  • Orientador : ROBERTA DE SOUZA COELHO
  • MEMBROS DA BANCA :
  • ROBERTA DE SOUZA COELHO
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • UIRA KULESZA
  • PAULO HENRIQUE MONTEIRO BORBA
  • Data: 26/07/2012

  • Mostrar Resumo
  • O mecanismo de tratamento de exceções é amplamente utilizado para a
    construção de sistemas robustos. No contexto de Linhas de Produto de
    Software  (LPSs) não é diferente. Uma vez que mecanismos de tratamento
    de exceções estão embutidos nas principais linguagens de programação
    (i.e., Java, C#, C++), podemos encontrar sinalizadores e tratadores de
    exceção espalhados entre os artefatos de código associados a
    características (do inglês: features) opcionais e obrigatórias de uma
    LPS.  Quando tratadores ou sinalizadores de exceções são adicionados a
    uma LPS de forma não planejada, uma das possíveis conseqüências é a
    geração de produtos falhos (i.e., produtos onde exceções lançadas por
    características variáveis ou comuns são erroneamente capturadas, ou
    que escapam a qualquer tratamento). Neste contexto, algumas perguntas
    surgem:  Como as exceções fluem entre as características variáveis e
    alternativas de uma LPS? Podemos antecipar se uma instancia da LPS
    possuirá falhas em seu comportamento excepcional? Com o objetivo de
    responder a estas perguntas neste trabalho de mestrado realizamos um
    estudo sistemático, baseado em inspeção de código e análise estática
    de código, cujo objetivo foi caracterizar as principais formas em que
    exceções fluem em LPSs, e analisar suas consequências. Para apoiar a
    realização deste estudo desenvolvemos a ferramenta PLEA (Product Line
    Exception Analyzer), uma ferramenta baseada em analise estática de
    código que encontra os fluxos excepcionais de uma LPS, e caracteriza
    estes fluxos de acordo com as características associadas aos
    tratadores e sinalizadores. Resultados preliminares mostraram que
    alguns tipos de fluxos excepcionais encontrados podem, realmente,
    acarretar falhas no comportamento excepcional de sistemas; neste
    estudo, por exemplo, foi detectada de forma consistente fluxos
    lançados por uma característica opcional e capturado por outra.


  • Mostrar Abstract
  • O mecanismo de tratamento de exceções é amplamente utilizado para a
    construção de sistemas robustos. No contexto de Linhas de Produto de
    Software  (LPSs) não é diferente. Uma vez que mecanismos de tratamento
    de exceções estão embutidos nas principais linguagens de programação
    (i.e., Java, C#, C++), podemos encontrar sinalizadores e tratadores de
    exceção espalhados entre os artefatos de código associados a
    características (do inglês: features) opcionais e obrigatórias de uma
    LPS.  Quando tratadores ou sinalizadores de exceções são adicionados a
    uma LPS de forma não planejada, uma das possíveis conseqüências é a
    geração de produtos falhos (i.e., produtos onde exceções lançadas por
    características variáveis ou comuns são erroneamente capturadas, ou
    que escapam a qualquer tratamento). Neste contexto, algumas perguntas
    surgem:  Como as exceções fluem entre as características variáveis e
    alternativas de uma LPS? Podemos antecipar se uma instancia da LPS
    possuirá falhas em seu comportamento excepcional? Com o objetivo de
    responder a estas perguntas neste trabalho de mestrado realizamos um
    estudo sistemático, baseado em inspeção de código e análise estática
    de código, cujo objetivo foi caracterizar as principais formas em que
    exceções fluem em LPSs, e analisar suas consequências. Para apoiar a
    realização deste estudo desenvolvemos a ferramenta PLEA (Product Line
    Exception Analyzer), uma ferramenta baseada em analise estática de
    código que encontra os fluxos excepcionais de uma LPS, e caracteriza
    estes fluxos de acordo com as características associadas aos
    tratadores e sinalizadores. Resultados preliminares mostraram que
    alguns tipos de fluxos excepcionais encontrados podem, realmente,
    acarretar falhas no comportamento excepcional de sistemas; neste
    estudo, por exemplo, foi detectada de forma consistente fluxos
    lançados por uma característica opcional e capturado por outra.

15
  • CARLOS BRENO PEREIRA SILVA
  • Apoiando a Construção de Testes de Aceitação Automatizados a partir da Especificação de Requisitos

  • Orientador : JAIR CAVALCANTI LEITE
  • MEMBROS DA BANCA :
  • ARNDT VON STAA
  • JAIR CAVALCANTI LEITE
  • NELIO ALESSANDRO AZEVEDO CACHO
  • ROBERTA DE SOUZA COELHO
  • Data: 27/07/2012

  • Mostrar Resumo
  • A automação consiste em uma importante atividade do processo de teste e é capaz de reduzir significativamente o tempo e custo do desenvolvimento. Algumas ferramentas tem sido propostas para automatizar a realização de testes de aceitação em aplicações Web. Contudo, grande parte delas apresenta limitações importantes tais como necessidade de valoração manual dos casos de testes, refatoração do código gerado e forte dependência com a estrutura das páginas HTML. Neste trabalho, apresentamos uma linguagem de especificação de teste e uma ferramenta concebidas para minimizar os impactos propiciados por essas limitações. A linguagem proposta dá suporte aos critérios de classes de equivalência e a ferramenta, desenvolvida sob a forma de um plug-in para a plataforma Eclipse, permite a geração de casos de teste através de diferentes estratégias de combinação. Para realizar a avaliação da abordagem, utilizamos um dos módulos do Sistema Unificado de Administração Publica (SUAP) do Instituto Federal do Rio Grande do Norte (IFRN). Participaram da avaliação analistas de sistemas e um técnico de informática que atuam como desenvolvedores do sistema utilizado.


  • Mostrar Abstract
  • A automação consiste em uma importante atividade do processo de teste e é capaz de reduzir significativamente o tempo e custo do desenvolvimento. Algumas ferramentas tem sido propostas para automatizar a realização de testes de aceitação em aplicações Web. Contudo, grande parte delas apresenta limitações importantes tais como necessidade de valoração manual dos casos de testes, refatoração do código gerado e forte dependência com a estrutura das páginas HTML. Neste trabalho, apresentamos uma linguagem de especificação de teste e uma ferramenta concebidas para minimizar os impactos propiciados por essas limitações. A linguagem proposta dá suporte aos critérios de classes de equivalência e a ferramenta, desenvolvida sob a forma de um plug-in para a plataforma Eclipse, permite a geração de casos de teste através de diferentes estratégias de combinação. Para realizar a avaliação da abordagem, utilizamos um dos módulos do Sistema Unificado de Administração Publica (SUAP) do Instituto Federal do Rio Grande do Norte (IFRN). Participaram da avaliação analistas de sistemas e um técnico de informática que atuam como desenvolvedores do sistema utilizado.

16
  • GEORGE HENRIQUE COSTA DANTAS
  • CALV3 - UMA LINGUAGEM  ESPECÍFICA DE DOMÍNIO PARA  SEGURANÇA EM SISTEMAS CORPORATIVOS: UM ESTUDO DE CASO SISTEMÁTICO NA INDÚSTRIA

  • Orientador : JAIR CAVALCANTI LEITE
  • MEMBROS DA BANCA :
  • JAIR CAVALCANTI LEITE
  • PAULO DE FIGUEIREDO PIRES
  • THAIS VASCONCELOS BATISTA
  • Data: 06/08/2012

  • Mostrar Resumo
  • A comunidade acadêmica e a indústria de software têm demonstrado, nos últimos anos, bastante interesse em abordagens e tecnologias ligadas à área de desenvolvimento dirigido por modelos (MDD). Em paralelo a isto, continua a busca incessante da indústria por tecnologias que aumentem a produtividade e qualidade no desenvolvimento de produtos de software. Esta pesquisa visa explorar estas duas afirmações, através de um trabalho que usa uma tecnologia MDD e avalia seu uso na resolução de um problema real no contexto de segurança de sistemas corporativos.  Com a construção e uso de uma ferramenta, uma DSL visual denominada CALV3, inspirada na abordagem de Fábricas de Software: uma sinergia entre linha de produto de software, linguagens específicas de domínio e MDD,  pretendemos avaliar os ganhos em abstração e produtividade, através de um estudo de caso sistemático conduzido em uma equipe de desenvolvimento. Esperamos que os resultados e lições aprendidas com a avaliação desta ferramenta no âmbito industrial sejam uma das principais contribuições deste trabalho.


  • Mostrar Abstract
  • A comunidade acadêmica e a indústria de software têm demonstrado, nos últimos anos, bastante interesse em abordagens e tecnologias ligadas à área de desenvolvimento dirigido por modelos (MDD). Em paralelo a isto, continua a busca incessante da indústria por tecnologias que aumentem a produtividade e qualidade no desenvolvimento de produtos de software. Esta pesquisa visa explorar estas duas afirmações, através de um trabalho que usa uma tecnologia MDD e avalia seu uso na resolução de um problema real no contexto de segurança de sistemas corporativos.  Com a construção e uso de uma ferramenta, uma DSL visual denominada CALV3, inspirada na abordagem de Fábricas de Software: uma sinergia entre linha de produto de software, linguagens específicas de domínio e MDD,  pretendemos avaliar os ganhos em abstração e produtividade, através de um estudo de caso sistemático conduzido em uma equipe de desenvolvimento. Esperamos que os resultados e lições aprendidas com a avaliação desta ferramenta no âmbito industrial sejam uma das principais contribuições deste trabalho.

17
  • THIAGO PEREIRA DA SILVA
  • AutoWebS: Um Ambiente para Modelagem e Geração Automática de Serviços Web Semânticos

  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • FLAVIA COIMBRA DELICATO
  • NELIO ALESSANDRO AZEVEDO CACHO
  • PAULO DE FIGUEIREDO PIRES
  • THAIS VASCONCELOS BATISTA
  • Data: 06/08/2012

  • Mostrar Resumo
  • Serviços Web fornecem meios para comunicação de diferentes sistemas de software em diferentes plataformas e tornaram-se um paradigma efetivo da computação distribuída na Internet. Os serviços Web podem ser reutilizados e combinados em uma composição de serviços para atender requisitos de uma aplicação. Entretanto, a ausência de descrições semânticas dos serviços Web torna a composição de serviços uma tarefa difícil, pois os serviços Web apenas possuem informações sintáticas que descrevem suas interfaces. Para resolver este problema, os serviços Web semânticos usam ontologias na definição da semântica dos serviços de forma a proporcionar a automatização da descoberta, publicação, mediação, invocação e composição de serviços.
    Porém, as linguagens para criação das ontologias dos serviços Web, como por exemplo, OWL, utilizam construções que não são fáceis de serem entendidas, até mesmo para programadores Web, e as ferramentas existentes que apoiam sua utilização levam aos usuários muitos detalhes que as tornam difíceis de serem manipuladas. Este trabalho apresenta a ferramenta AutoWebs (Automatic Generation of Semantic WeServices) que é baseada em transformações entre modelos para a criação de serviços Web semânticos. AutoWebs oferece um ambiente que integra várias funcionalidades necessárias para modelar, implementar, compilar e fazer o deploy de serviços Web semânticos.


  • Mostrar Abstract
  • Serviços Web fornecem meios para comunicação de diferentes sistemas de software em diferentes plataformas e tornaram-se um paradigma efetivo da computação distribuída na Internet. Os serviços Web podem ser reutilizados e combinados em uma composição de serviços para atender requisitos de uma aplicação. Entretanto, a ausência de descrições semânticas dos serviços Web torna a composição de serviços uma tarefa difícil, pois os serviços Web apenas possuem informações sintáticas que descrevem suas interfaces. Para resolver este problema, os serviços Web semânticos usam ontologias na definição da semântica dos serviços de forma a proporcionar a automatização da descoberta, publicação, mediação, invocação e composição de serviços.
    Porém, as linguagens para criação das ontologias dos serviços Web, como por exemplo, OWL, utilizam construções que não são fáceis de serem entendidas, até mesmo para programadores Web, e as ferramentas existentes que apoiam sua utilização levam aos usuários muitos detalhes que as tornam difíceis de serem manipuladas. Este trabalho apresenta a ferramenta AutoWebs (Automatic Generation of Semantic WeServices) que é baseada em transformações entre modelos para a criação de serviços Web semânticos. AutoWebs oferece um ambiente que integra várias funcionalidades necessárias para modelar, implementar, compilar e fazer o deploy de serviços Web semânticos.

18
  • CHRISTIANE DE ARAUJO NOBRE
  •  Avaliação da Execução de Aplicações Orientadas a Dados na Arquitetura de Redes em Chip IPNoSys.

  • Orientador : MARCIO EDUARDO KREUTZ
  • MEMBROS DA BANCA :
  • MARCIO EDUARDO KREUTZ
  • ADILSON BARBOZA LOPES
  • EDNA NATIVIDADE DA SILVA BARROS
  • KARLA DARLENE NEPOMUCENO RAMOS
  • Data: 17/08/2012

  • Mostrar Resumo
  • A crescente complexidade dos circuitos integrados impulsionou o surgimento de arquiteturas de comunicação do tipo Redes em chip ou NoCs (do inglês, Networks-on-Chips), como alternativa de arquitetura de interconexão para Sistemas-em-Chip (SoCs; Systems-on-Chip). As redes em chip possuem capacidade de reuso de componentes, paralelismo e escalabilidade, permitindo a reutilização em projetos diversos. Na literatura, têm-se uma grande quantidade de propostas com diferentes configurações de redes em chip. Dentre as redes em chip estudadas, a rede IPNoSys possui arquitetura diferenciada, pois permite a execução de operações, em conjunto com as esperadas atividades de comunicação. Este trabalho visa avaliar a execução de aplicações orientadas a dados na rede IPNoSys, focando na sua adequação frente à restrições de projeto. As aplicações orientadas a dados são caracterizadas pela comunicação de um fluxo contínuo de dados sobre os quais, operações são executadas. Espera-se então, que estas aplicações possam ser beneficiadas quando de sua execução na rede IPNoSys, devido ao seu elavado grau de paralelismo e por possuírem modelo de programação semelhante ao modelo de execução desta rede. Uma vez observadas a execução de aplicações na rede IPNoSys, foram realizadas modificações no modelo de execução desta rede, o que permitiu a implementação de um paralelismo a nível de instruções. Para isso, análises das execuções de aplicações orientadas a dados foram realizadas e comparadas.


  • Mostrar Abstract
  • A crescente complexidade dos circuitos integrados impulsionou o surgimento de arquiteturas de comunicação do tipo Redes em chip ou NoCs (do inglês, Networks-on-Chips), como alternativa de arquitetura de interconexão para Sistemas-em-Chip (SoCs; Systems-on-Chip). As redes em chip possuem capacidade de reuso de componentes, paralelismo e escalabilidade, permitindo a reutilização em projetos diversos. Na literatura, têm-se uma grande quantidade de propostas com diferentes configurações de redes em chip. Dentre as redes em chip estudadas, a rede IPNoSys possui arquitetura diferenciada, pois permite a execução de operações, em conjunto com as esperadas atividades de comunicação. Este trabalho visa avaliar a execução de aplicações orientadas a dados na rede IPNoSys, focando na sua adequação frente à restrições de projeto. As aplicações orientadas a dados são caracterizadas pela comunicação de um fluxo contínuo de dados sobre os quais, operações são executadas. Espera-se então, que estas aplicações possam ser beneficiadas quando de sua execução na rede IPNoSys, devido ao seu elavado grau de paralelismo e por possuírem modelo de programação semelhante ao modelo de execução desta rede. Uma vez observadas a execução de aplicações na rede IPNoSys, foram realizadas modificações no modelo de execução desta rede, o que permitiu a implementação de um paralelismo a nível de instruções. Para isso, análises das execuções de aplicações orientadas a dados foram realizadas e comparadas.

19
  • TIAGO SOUZA DOS SANTOS
  • Segmentação Fuzzy de Texturas e Vídeos


  • Orientador : BRUNO MOTTA DE CARVALHO
  • MEMBROS DA BANCA :
  • BRUNO MOTTA DE CARVALHO
  • HERMAN MARTINS GOMES
  • SELAN RODRIGUES DOS SANTOS
  • Data: 17/08/2012

  • Mostrar Resumo
  • Segmentar uma imagem é subdividi-la em partes ou objetos constituintes que tenham algum conteúdo semântico relevante. Esta subdivisão pode também ser aplicada a um vídeo, porém, neste, os objetos podem estar presentes nos diversos frames que compõe o vídeo. A tarefa de segmentar imagens torná-se ainda mais complexa quando estas são compostas por objetos que contenham características puramente texturais, pois, nestes casos, a identificação do padrão de cada objeto não é uma tarefa fácil de se automatizar, embora essa identificação seja humanamente possível e relativamente fácil. A segmentação difusa, do Inglês fuzzy, é uma técnica de segmentação por crescimento de regiões que determina para cada elemento da imagem um grau de pertinência (entre zero e um) indicando a confiança de que esse elemento pertença a um determinado objeto ou região existente na imagem, fazendo-se uso de funções de afinidades para obter esses valores de pertinência. Neste trabalho será apresentada uma modificação do algoritmo de segmentação fuzzy de imagens, a fim de se obter melhorias na complexidade temporal e espacial. O algoritmo é adaptado para segmentar vídeos coloridos tratando-os como volumes 3D. Para segmentar os vídeos, foram utilizadas informações provenientes de um modelo de cor convencional ou de um modelo híbrido obtido através de uma metodologia para a escolha dos melhores canais para realizar a segmentação. O algoritmo de segmentação fuzzy foi aplicado também na segmentação de texturas, fazendo-se uso de funções de afinidades adaptativas às texturas de cada objeto. As funções de afinidades utilizadas foram a distribuição normal de probabilidade, ou gaussiana, e a Skew Divergence. Esta última, uma variação da Kullback-Leibler Divergence, é uma medida da divergência entre duas massas de probabilidades. Por fim, o algoritmo foi testado com alguns vídeos, naturais e sintéticos, e também com imagens de mosaicos de texturas de Brodatz.


  • Mostrar Abstract
  • Segmentar uma imagem é subdividi-la em partes ou objetos constituintes que tenham algum conteúdo semântico relevante. Esta subdivisão pode também ser aplicada a um vídeo, porém, neste, os objetos podem estar presentes nos diversos frames que compõe o vídeo. A tarefa de segmentar imagens torná-se ainda mais complexa quando estas são compostas por objetos que contenham características puramente texturais, pois, nestes casos, a identificação do padrão de cada objeto não é uma tarefa fácil de se automatizar, embora essa identificação seja humanamente possível e relativamente fácil. A segmentação difusa, do Inglês fuzzy, é uma técnica de segmentação por crescimento de regiões que determina para cada elemento da imagem um grau de pertinência (entre zero e um) indicando a confiança de que esse elemento pertença a um determinado objeto ou região existente na imagem, fazendo-se uso de funções de afinidades para obter esses valores de pertinência. Neste trabalho será apresentada uma modificação do algoritmo de segmentação fuzzy de imagens, a fim de se obter melhorias na complexidade temporal e espacial. O algoritmo é adaptado para segmentar vídeos coloridos tratando-os como volumes 3D. Para segmentar os vídeos, foram utilizadas informações provenientes de um modelo de cor convencional ou de um modelo híbrido obtido através de uma metodologia para a escolha dos melhores canais para realizar a segmentação. O algoritmo de segmentação fuzzy foi aplicado também na segmentação de texturas, fazendo-se uso de funções de afinidades adaptativas às texturas de cada objeto. As funções de afinidades utilizadas foram a distribuição normal de probabilidade, ou gaussiana, e a Skew Divergence. Esta última, uma variação da Kullback-Leibler Divergence, é uma medida da divergência entre duas massas de probabilidades. Por fim, o algoritmo foi testado com alguns vídeos, naturais e sintéticos, e também com imagens de mosaicos de texturas de Brodatz.

20
  • ANTONINO ALVES FEITOSA NETO
  • Análise das Medidas de Boa e Má Diversidade na Construção de Comitês de Classificadores Através de Metaheurísticas de Otimização Multiobjetivo

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • MEMBROS DA BANCA :
  • ANDRE MAURICIO CUNHA CAMPOS
  • ANNE MAGALY DE PAULA CANUTO
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • RONALDO CRISTIANO PRATI
  • Data: 24/08/2012

  • Mostrar Resumo
  • Comitês de classificadores podem ser empregados para melhorar a acurácia de sistemas de classificação, ou seja, diferentes classificadores aplicados a solução de um mesmo problema podem ser combinados gerando um sistema de maior acurácia, denominado de comitês de classificadores. Para que ele obtenha sucesso é necessário que os classificadores apresentem erros em diferentes objetos do problema para que assim os erros de um classificador sejam ignorados pelo acerto dos demais na aplicação do método de combinação do comitê. A característica dos classificadores de errarem em objetos diferentes é denominada de diversidade e recentemente foram propostas as medidas de boa e má diversidade com o objetivo de auxiliar a geração de comitês mais acurados. Este trabalho efetua uma análise experimental dessas medidas aplicadas diretamente na construção de comitês de classificadores. O método de construção adotado é modelado como um problema de busca pelo conjunto de classificadores, parâmetros dos classificadores e características das bases de dados do problema a fim de encontrar o comitê de classificadores que apresente à maior acurácia de classificação. Esse problema é resolvido através de técnicas de otimização metaheurísticas. São efetuadas análises para verificar se usar ou adicionar as medidas de boa e má diversidade como objetivos de otimização resulte comitês mais acurados. Assim, a contribuição desse trabalho é determinar se as medidas de boa e má diversidade podem ser utilizadas em técnicas de otimização mono e multiobjetivo como objetivos de otimização para construção de comitês de classificadores mais acurados que aqueles construídos pelo mesmo processo, porém utilizando somente a acurácia de classificação como objetivo de otimização.

     


  • Mostrar Abstract
  • Comitês de classificadores podem ser empregados para melhorar a acurácia de sistemas de classificação, ou seja, diferentes classificadores aplicados a solução de um mesmo problema podem ser combinados gerando um sistema de maior acurácia, denominado de comitês de classificadores. Para que ele obtenha sucesso é necessário que os classificadores apresentem erros em diferentes objetos do problema para que assim os erros de um classificador sejam ignorados pelo acerto dos demais na aplicação do método de combinação do comitê. A característica dos classificadores de errarem em objetos diferentes é denominada de diversidade e recentemente foram propostas as medidas de boa e má diversidade com o objetivo de auxiliar a geração de comitês mais acurados. Este trabalho efetua uma análise experimental dessas medidas aplicadas diretamente na construção de comitês de classificadores. O método de construção adotado é modelado como um problema de busca pelo conjunto de classificadores, parâmetros dos classificadores e características das bases de dados do problema a fim de encontrar o comitê de classificadores que apresente à maior acurácia de classificação. Esse problema é resolvido através de técnicas de otimização metaheurísticas. São efetuadas análises para verificar se usar ou adicionar as medidas de boa e má diversidade como objetivos de otimização resulte comitês mais acurados. Assim, a contribuição desse trabalho é determinar se as medidas de boa e má diversidade podem ser utilizadas em técnicas de otimização mono e multiobjetivo como objetivos de otimização para construção de comitês de classificadores mais acurados que aqueles construídos pelo mesmo processo, porém utilizando somente a acurácia de classificação como objetivo de otimização.

     

21
  • PRISCILLA VICTOR DANTAS
  • LWiSSy: Uma Linguagem Específica de Domínio Para Modelagem de Sistemas de Redes de Sensores e Atuadores Sem Fio

  • Orientador : FLAVIA COIMBRA DELICATO
  • MEMBROS DA BANCA :
  • FLAVIA COIMBRA DELICATO
  • MARCOS CESAR MADRUGA ALVES PINHEIRO
  • PAULO DE FIGUEIREDO PIRES
  • THAIS VASCONCELOS BATISTA
  • Data: 28/09/2012

  • Mostrar Resumo
  • As Redes de Sensores e Atuadores Sem Fio (RSASF) vêm emergindo
    rapidamente e têm atraído o interesse da comunidade de pesquisa e da
    indústria, graças a vários fatores, dentre eles a aplicabilidade desse
    tipo de rede nos mais diversos domínios de aplicações (aviação,
    engenharia civil, medicina, dentre outros).
    Além disso, avanços na comunicação sem fio e miniaturização dos
    componentes de hardware também contribuíram
    para a rápida proliferação dessas redes. Apesar disso, ainda existem
    alguns desafios a serem transpostos a fim de se atingir
    o pleno potencial de utilização das RSASF. Dentre estes, o
    desenvolvimento de sistemas de RSASF aparece como um dos
    mais relevantes atualmente, haja vista a quantidade de variáveis
    envolvidas no processo de desenvolvimento.
    Atualmente, uma vasta gama de plataformas de RSASF e diversas
    linguagens de programação de baixo nível podem ser empregadas
    no desenvolvimento desses sistemas. Dessa forma, é necessário que o
    desenvolvedor possua tanto conhecimento de baixo nível relativo à
    plataforma da RSASF,
    quanto conhecimento específico do domínio de cada uma das aplicações
    presentes no sistema. A fim de efetuar o desacoplamento da utilização
    destes
    conhecimentos durante o processo de desenvolvimento, de forma a
    facilitar tal processo, este trabalho propõe uma linguagem para
    modelagem de sistemas para RSASF
    baseada no uso de DSLs (Domain Specific Language) chamada LWiSSy
    (Domain Language for Wireless Sensor and Actuator Networks Systems).
    As DSLs, pelo fato de aumentarem o nível de abstração da programação e
    modularizarem a construção de sistemas em várias etapas,
    permitirão que ambos os especialistas envolvidos (domínio e redes)
    possam contribuir diretamente, de maneira mais desacoplada do que
    ocorre atualmente,
    durante o desenvolvimento do sistema. Além dos benefícios
    supracitados, LWiSSy possibilitará ainda a decomposição do sistema em
    diferentes níveis de abstração,
    haja vista a necessidade de representar características (estrutural e
    comportamental) e granulosidades (programação em nível de rede,
    em nível de grupos de nós e em nível de nó) diferentes em um único sistema.


  • Mostrar Abstract
  • As Redes de Sensores e Atuadores Sem Fio (RSASF) vêm emergindo
    rapidamente e têm atraído o interesse da comunidade de pesquisa e da
    indústria, graças a vários fatores, dentre eles a aplicabilidade desse
    tipo de rede nos mais diversos domínios de aplicações (aviação,
    engenharia civil, medicina, dentre outros).
    Além disso, avanços na comunicação sem fio e miniaturização dos
    componentes de hardware também contribuíram
    para a rápida proliferação dessas redes. Apesar disso, ainda existem
    alguns desafios a serem transpostos a fim de se atingir
    o pleno potencial de utilização das RSASF. Dentre estes, o
    desenvolvimento de sistemas de RSASF aparece como um dos
    mais relevantes atualmente, haja vista a quantidade de variáveis
    envolvidas no processo de desenvolvimento.
    Atualmente, uma vasta gama de plataformas de RSASF e diversas
    linguagens de programação de baixo nível podem ser empregadas
    no desenvolvimento desses sistemas. Dessa forma, é necessário que o
    desenvolvedor possua tanto conhecimento de baixo nível relativo à
    plataforma da RSASF,
    quanto conhecimento específico do domínio de cada uma das aplicações
    presentes no sistema. A fim de efetuar o desacoplamento da utilização
    destes
    conhecimentos durante o processo de desenvolvimento, de forma a
    facilitar tal processo, este trabalho propõe uma linguagem para
    modelagem de sistemas para RSASF
    baseada no uso de DSLs (Domain Specific Language) chamada LWiSSy
    (Domain Language for Wireless Sensor and Actuator Networks Systems).
    As DSLs, pelo fato de aumentarem o nível de abstração da programação e
    modularizarem a construção de sistemas em várias etapas,
    permitirão que ambos os especialistas envolvidos (domínio e redes)
    possam contribuir diretamente, de maneira mais desacoplada do que
    ocorre atualmente,
    durante o desenvolvimento do sistema. Além dos benefícios
    supracitados, LWiSSy possibilitará ainda a decomposição do sistema em
    diferentes níveis de abstração,
    haja vista a necessidade de representar características (estrutural e
    comportamental) e granulosidades (programação em nível de rede,
    em nível de grupos de nós e em nível de nó) diferentes em um único sistema.

22
  • HANIEL MOREIRA BARBOSA
  • Formal verification of PLC programs using the B Method

  • Orientador : DAVID BORIS PAUL DEHARBE
  • MEMBROS DA BANCA :
  • DAVID BORIS PAUL DEHARBE
  • MARCEL VINICIUS MEDEIROS OLIVEIRA
  • ALEXANDRE CABRAL MOTA
  • Data: 01/11/2012

  • Mostrar Resumo
  • Controladores Lógico Programáveis (PLCs - \emph{Programmable Logic Controllers}, em inglês) 
    desempenham funções de controle, recebendo informações do ambiente, processando-as e modificando este
    ambiente de acordo com os resultados obtidos. São comumente utilizados na indústria nas mais diversas 
    aplicações, do transporte de massa a fábricas de bebidas. Com o crescente aumento da complexidade dessas 
    aplicações e do seu uso em sistemas críticos, faz-se necessária uma forma de verificação que propicie mais 
    confiança do que testes e simulação, padrões mais utilizados na indústria, mas que podem deixar falhas não 
    tratadas. Métodos formais podem prover maior segurança a este tipo de sistema, uma vez que permitem a sua 
    verificação matemática. Neste trabalho fazemos uso do Método B, que é usado com sucesso na indústria na 
    verificação de sistemas críticos, possui amplo apoio ferramental e suporte
    a decomposição, refinamento e verificação de corretude em relação à especificação através de obrigações de 
    prova. O método desenvolvido e apresentado aqui consiste em gerar automaticamente modelos B a partir de programas para PLCs e verificá-los formalmente em relação a propriedades de segurança, estas derivadas manualmente a partir dos requisitos do sistema. O escopo do trabalho são as linguagens de programação para PLCs do padrão IEC 61131-3, mas sistemas com linguagens que apresentem modificações em relação ao padrão também são suportados. Esta abordagem visa facilitar a integração de métodos formais na indústria através da diminuição do esforço
    para realizar a verificação formal de PLCs.

  • Mostrar Abstract
  • Controladores Lógico Programáveis (PLCs - \emph{Programmable Logic Controllers}, em inglês) 
    desempenham funções de controle, recebendo informações do ambiente, processando-as e modificando este
    ambiente de acordo com os resultados obtidos. São comumente utilizados na indústria nas mais diversas 
    aplicações, do transporte de massa a fábricas de bebidas. Com o crescente aumento da complexidade dessas 
    aplicações e do seu uso em sistemas críticos, faz-se necessária uma forma de verificação que propicie mais 
    confiança do que testes e simulação, padrões mais utilizados na indústria, mas que podem deixar falhas não 
    tratadas. Métodos formais podem prover maior segurança a este tipo de sistema, uma vez que permitem a sua 
    verificação matemática. Neste trabalho fazemos uso do Método B, que é usado com sucesso na indústria na 
    verificação de sistemas críticos, possui amplo apoio ferramental e suporte
    a decomposição, refinamento e verificação de corretude em relação à especificação através de obrigações de 
    prova. O método desenvolvido e apresentado aqui consiste em gerar automaticamente modelos B a partir de programas para PLCs e verificá-los formalmente em relação a propriedades de segurança, estas derivadas manualmente a partir dos requisitos do sistema. O escopo do trabalho são as linguagens de programação para PLCs do padrão IEC 61131-3, mas sistemas com linguagens que apresentem modificações em relação ao padrão também são suportados. Esta abordagem visa facilitar a integração de métodos formais na indústria através da diminuição do esforço
    para realizar a verificação formal de PLCs.
Teses
1
  • LAURA EMMANUELLA ALVES DOS SANTOS SANTANA DE OLIVEIRA
  • Otimização em comitês de classificadores: uma abordagem baseada em filtro para seleção de subconjuntos de atributos

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • MEMBROS DA BANCA :
  • ADRIAO DUARTE DORIA NETO
  • ANDRÉ CARLOS PONCE DE LEON FERREIRA DE CARVALHO
  • ANNE MAGALY DE PAULA CANUTO
  • CLEBER ZANCHETTIN
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • Data: 02/02/2012

  • Mostrar Resumo
  • A aplicação tradicional da seleção de atributos em diversas áreas como mineração de dados, aprendizado de máquina e reconhecimento de padrões visa melhorar a acurácia dos modelos construídos com a base de dados, ao retirar dados ruidosos ou redundantes, e diminuir o custo computacional do modelo, ao encontrar um subconjunto representativo dos dados que diminua sua dimensionalidade sem perda de desempenho. Com o desenvolvimento das pesquisas com comitês de classificadores e a verificação de que  esse tipo de modelo possui melhor desempenho que os modelos individuais, dado que os classificadores base sejam diversos, surge uma nova aplicação às pesquisas com seleção de atributos, que é a de encontrar subconjuntos diversos de atributos para a construção dos classificadores base de comitês de classificadores. O presente trabalho propõe uma abordagem que maximiza a diversidade de comitês de classificadores através da seleção de subconjuntos de atributos utilizando um modelo independente do algoritmo de aprendizagem e de baixo custo computacional. Isso é feito utilizando metaheurísticas bioinspiradas com critérios de avaliação baseados em filtro.  
    .


  • Mostrar Abstract
  • A aplicação tradicional da seleção de atributos em diversas áreas como mineração de dados, aprendizado de máquina e reconhecimento de padrões visa melhorar a acurácia dos modelos construídos com a base de dados, ao retirar dados ruidosos ou redundantes, e diminuir o custo computacional do modelo, ao encontrar um subconjunto representativo dos dados que diminua sua dimensionalidade sem perda de desempenho. Com o desenvolvimento das pesquisas com comitês de classificadores e a verificação de que  esse tipo de modelo possui melhor desempenho que os modelos individuais, dado que os classificadores base sejam diversos, surge uma nova aplicação às pesquisas com seleção de atributos, que é a de encontrar subconjuntos diversos de atributos para a construção dos classificadores base de comitês de classificadores. O presente trabalho propõe uma abordagem que maximiza a diversidade de comitês de classificadores através da seleção de subconjuntos de atributos utilizando um modelo independente do algoritmo de aprendizagem e de baixo custo computacional. Isso é feito utilizando metaheurísticas bioinspiradas com critérios de avaliação baseados em filtro.  
    .

2
  • SILVIO ROBERTO FERNANDES DE ARAUJO
  • Projeto de Sistemas Integrados de Propósito Geral Baseados em Redes em Chip – Expandindo as Funcionalidades dos Roteadores para Execução de Operações: A plataforma IPNoSys

  • Orientador : IVAN SARAIVA SILVA
  • MEMBROS DA BANCA :
  • ALTAMIRO AMADEU SUSIN
  • CESAR ALBENES ZEFERINO
  • DAVID BORIS PAUL DEHARBE
  • IVAN SARAIVA SILVA
  • MARCIO EDUARDO KREUTZ
  • Data: 30/03/2012

  • Mostrar Resumo
  • Aposta-se na próxima geração de computadores como sendo de arquitetura com múltiplos processadores e/ou processadores com vários núcleos. Neste sentido há desafios relacionados aos mecanismos de interconexão, frequência de operação, área ocupada em chip, potência dissipada, programabilidade e desempenho. O mecanismo de interconexão e comunicação considerado ideal para esse tipo de arquitetura são as redes em chip, pela escalabilidade, paralelismo intrínseco e reusabilidade. A comunicação nas redes em chip é realizada através da transmissão de pacotes que carregam dados e instruções que representam requisições e respostas entre os elementos processadores interligados pela rede. A transmissão desses pacotes acontece como em um pipeline entre os roteadores da rede, da origem até o destino da comunicação, permitindo inclusive comunicações simultâneas entre pares de origem e destinos diferentes. Partindo desse fato, propõe-se transformar toda a infraetrutura de comunicação de uma rede em chip, aproveitando os mecanismos de roteamento, arbitragem e memorização em um sistema de processamento paralelo de alto desempenho. Nessa proposta os pacotes são formados por instruções e dados que representam as aplicações, os quais são executados nos roteadores enquanto são transmitidos, aproveitando o pipeline das transmissões e a comunicação paralela. Em contrapartida, não são utilizados processadores tradicionais, mas apenas núcleos simples que controlam o acesso a memória. Uma implementação dessa ideia é a arquitetura intitulada IPNoSys (Integrated Processing NoC System), que conta com um modelo de programação próprio e um algoritmo de roteamento que garante a execução de todas as instruções presentes nos pacotes, prevenindo situações de deadlock, livelock e starvation. Essa arquitetura apresenta mecanismos de entrada e saída, interrupção e suporte ao sistema operacional. Como prova de conceito foi desenvolvido um ambiente de simulação para esta arquitetura em SystemC, o qual permite a configuração de vários parâmetros da arquitetura e obtenção dos resultados para avaliação da mesma.


  • Mostrar Abstract
  • Aposta-se na próxima geração de computadores como sendo de arquitetura com múltiplos processadores e/ou processadores com vários núcleos. Neste sentido há desafios relacionados aos mecanismos de interconexão, frequência de operação, área ocupada em chip, potência dissipada, programabilidade e desempenho. O mecanismo de interconexão e comunicação considerado ideal para esse tipo de arquitetura são as redes em chip, pela escalabilidade, paralelismo intrínseco e reusabilidade. A comunicação nas redes em chip é realizada através da transmissão de pacotes que carregam dados e instruções que representam requisições e respostas entre os elementos processadores interligados pela rede. A transmissão desses pacotes acontece como em um pipeline entre os roteadores da rede, da origem até o destino da comunicação, permitindo inclusive comunicações simultâneas entre pares de origem e destinos diferentes. Partindo desse fato, propõe-se transformar toda a infraetrutura de comunicação de uma rede em chip, aproveitando os mecanismos de roteamento, arbitragem e memorização em um sistema de processamento paralelo de alto desempenho. Nessa proposta os pacotes são formados por instruções e dados que representam as aplicações, os quais são executados nos roteadores enquanto são transmitidos, aproveitando o pipeline das transmissões e a comunicação paralela. Em contrapartida, não são utilizados processadores tradicionais, mas apenas núcleos simples que controlam o acesso a memória. Uma implementação dessa ideia é a arquitetura intitulada IPNoSys (Integrated Processing NoC System), que conta com um modelo de programação próprio e um algoritmo de roteamento que garante a execução de todas as instruções presentes nos pacotes, prevenindo situações de deadlock, livelock e starvation. Essa arquitetura apresenta mecanismos de entrada e saída, interrupção e suporte ao sistema operacional. Como prova de conceito foi desenvolvido um ambiente de simulação para esta arquitetura em SystemC, o qual permite a configuração de vários parâmetros da arquitetura e obtenção dos resultados para avaliação da mesma.

3
  • ROGERIO RODRIGUES DE VARGAS
  • Uma Nova Forma de Calcular os Centros dos Clusters em Algoritmos de Agrupamento Tipo Fuzzy C-Means

  • Orientador : BENJAMIN RENE CALLEJAS BEDREGAL
  • MEMBROS DA BANCA :
  • ANNE MAGALY DE PAULA CANUTO
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • REGIVAN HUGO NUNES SANTIAGO
  • RENATA HAX SANDER REISER
  • RONEI MARCOS DE MORAES
  • Data: 30/03/2012

  • Mostrar Resumo
  • Agrupar dados  é uma tarefa muito importante em mineração de dados, processamento de imagens e em problemas de reconhecimento de padrões. Um dos algoritmos de agrupamentos mais popular é o Fuzzy C-Means (FCM). Esta tese porpõe aplicar uma nova forma de calcular os centros dos clusters no algoritmo FCM, que denominamos de ckMeans, e que pode ser também aplicada em algumas variantes do FCM,  em particular aqui aplicamos naquelas variantes que usam outras distancias. Com essa modificação pretende-se reduzir o número de iterações e o tempo de processamento desses algoritmos sem afetar a qualidade da partição ou até melhorar o número de classificaçõe corretas em alguns casos.  Também, desenvolveu-se um algoritmo baseado no ckMeans para manipular dados intervalares considerando graus de pertinência intervalares, possibilitando assim, representar os dados sem nenhuma conversão dos dados intervalares para pontuais, como ocorre com outras extensões do FCM que lidam comdados intervalares. Para validar as metodologias propostas, comparou-se o agrupamento ckMeans com os algoritmos K-Means (pois a nova forma de calcular os centros se assemelha à do K-Means) e FCM, considerando três distâncias diferentes.Utilizaram-se várias bases de dados conhecidas. No caso, do ck-Means intervalar, foi comprada com outros algoritmos de agrupamentointervalar quando aplicadas a  uma base de dados intervalar com a temperatura mínima e máxima do mês de um determinado ano de 37 cidades distribuídas entre os continentes.


  • Mostrar Abstract
  • Agrupar dados  é uma tarefa muito importante em mineração de dados, processamento de imagens e em problemas de reconhecimento de padrões. Um dos algoritmos de agrupamentos mais popular é o Fuzzy C-Means (FCM). Esta tese porpõe aplicar uma nova forma de calcular os centros dos clusters no algoritmo FCM, que denominamos de ckMeans, e que pode ser também aplicada em algumas variantes do FCM,  em particular aqui aplicamos naquelas variantes que usam outras distancias. Com essa modificação pretende-se reduzir o número de iterações e o tempo de processamento desses algoritmos sem afetar a qualidade da partição ou até melhorar o número de classificaçõe corretas em alguns casos.  Também, desenvolveu-se um algoritmo baseado no ckMeans para manipular dados intervalares considerando graus de pertinência intervalares, possibilitando assim, representar os dados sem nenhuma conversão dos dados intervalares para pontuais, como ocorre com outras extensões do FCM que lidam comdados intervalares. Para validar as metodologias propostas, comparou-se o agrupamento ckMeans com os algoritmos K-Means (pois a nova forma de calcular os centros se assemelha à do K-Means) e FCM, considerando três distâncias diferentes.Utilizaram-se várias bases de dados conhecidas. No caso, do ck-Means intervalar, foi comprada com outros algoritmos de agrupamentointervalar quando aplicadas a  uma base de dados intervalar com a temperatura mínima e máxima do mês de um determinado ano de 37 cidades distribuídas entre os continentes.

4
  • ARAKEN DE MEDEIROS SANTOS
  • Investigando a Combinação de Técnicas de Aprendizado Semissupervisionado e Classicação Hierárquica Multirrótulo

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • MEMBROS DA BANCA :
  • ADRIAO DUARTE DORIA NETO
  • ANDRÉ CARLOS PONCE DE LEON FERREIRA DE CARVALHO
  • ANNE MAGALY DE PAULA CANUTO
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • GISELE LOBO PAPPA
  • Data: 25/05/2012

  • Mostrar Resumo
  • A classificação de dados é uma tarefa com alta aplicabilidade em uma grande quantidade
    de domínios. Na literatura, pode ser encontrada uma grande quantidade de métodos
    consolidados para tratar problemas de classificação. No entanto, a maioria desses métodos
    de classificação, ditos tradicionais ou unirrótulo, consideram que para cada exemplo
    é atribuído um único rótulo. Além disso, nenhuma relação hierárquica entre as classes
    possíveis é considerada. Contudo, nos últimos anos vem sendo identicada uma série de
    tarefas de classificação nas quais os exemplos podem ser rotulados a mais de uma classe
    simultaneamente (classicação multirrótulo). Adicionalmente, tais classes podem estar
    hierarquicamente organizadas (classicação hierárquica e classicação hierárquica multirr
    ótulo). Por outro lado, tem-se estudado também uma nova categoria de aprendizado,
    chamada de aprendizado semissupervisionado, que combina dados rotulados (aprendizado
    supervisionado) e dados não-rotulados (aprendizado não-supervisionado), durante a fase
    de treinamento, reduzindo, assim, a necessidade de uma grande quantidade de dados rotulados
    quando somente um pequeno conjunto de exemplos rotulados está disponível.

    Desse modo, uma vez que tanto as técnicas de classificação hierárquica, multirrótulo e hierárquica
    multirrótulo quanto o aprendizado semissupervisionado vem apresentando resultados favoráveis à sua utilização, nesta proposta de trabalho é sugerida a aplicação de aprendizado
    semissupervisionado em tarefas de classificação hierárquica multirrótulo, de modo a se
    atender eficientemente as principais necessidadades das duas áreas.
     


  • Mostrar Abstract
  • A classificação de dados é uma tarefa com alta aplicabilidade em uma grande quantidade
    de domínios. Na literatura, pode ser encontrada uma grande quantidade de métodos
    consolidados para tratar problemas de classificação. No entanto, a maioria desses métodos
    de classificação, ditos tradicionais ou unirrótulo, consideram que para cada exemplo
    é atribuído um único rótulo. Além disso, nenhuma relação hierárquica entre as classes
    possíveis é considerada. Contudo, nos últimos anos vem sendo identicada uma série de
    tarefas de classificação nas quais os exemplos podem ser rotulados a mais de uma classe
    simultaneamente (classicação multirrótulo). Adicionalmente, tais classes podem estar
    hierarquicamente organizadas (classicação hierárquica e classicação hierárquica multirr
    ótulo). Por outro lado, tem-se estudado também uma nova categoria de aprendizado,
    chamada de aprendizado semissupervisionado, que combina dados rotulados (aprendizado
    supervisionado) e dados não-rotulados (aprendizado não-supervisionado), durante a fase
    de treinamento, reduzindo, assim, a necessidade de uma grande quantidade de dados rotulados
    quando somente um pequeno conjunto de exemplos rotulados está disponível.

    Desse modo, uma vez que tanto as técnicas de classificação hierárquica, multirrótulo e hierárquica
    multirrótulo quanto o aprendizado semissupervisionado vem apresentando resultados favoráveis à sua utilização, nesta proposta de trabalho é sugerida a aplicação de aprendizado
    semissupervisionado em tarefas de classificação hierárquica multirrótulo, de modo a se
    atender eficientemente as principais necessidadades das duas áreas.
     

5
  • BRUNO EMERSON GURGEL GOMES
  • Desenvolvimento Formal de Aplicações para Smart Cards

  • Orientador : DAVID BORIS PAUL DEHARBE
  • MEMBROS DA BANCA :
  • ANAMARIA MARTINS MOREIRA
  • AUGUSTO CEZAR ALVES SAMPAIO
  • DAVID BORIS PAUL DEHARBE
  • MARCEL VINICIUS MEDEIROS OLIVEIRA
  • ROHIT GHEYI
  • Data: 01/06/2012

  • Mostrar Resumo
  • As aplicações para smart cards representam um mercado
    que cresce a cada ano. Normalmente, essas aplicações
    manipulam e armazenam informações que requerem garantias de
    segurança, tais como valores monetários ou informações confidenciais.
    A qualidade e a segurança do software smart card pode ser aprimorada
    através de um processo de desenvolvimento rigoroso que empregue técnicas
    formais da engenharia de software. Neste trabalho propomos o
    método BSmart, uma especialização do método formal B dedicada
    ao desenvolvimento de aplicações para smart cards
    na linguagem Java Card. O método descreve, em um conjunto de etapas,
    como uma aplicação smart card pode ser gerada a partir de
    refinamentos em sua especificação formal. O trabalho a ser desenvolvido
    é um aprimoramento da dissertação de mestrado do autor desta proposta.
    No trabalho anterior, o foco maior foi o desenvolvimento inicial do método
    e das ferramentas essenciais para o desenvolvimento e geração de
    código de B para Java Card. No entanto, a verificação do processo de
    desenvolvimento e geração de código não foi tratada. O trabalho proposto
    na tese prioriza a formalização e a verificação de todo processo de
    refinamento descrito no método e das etapas de geração de
    código da aplicação Java Card. Também faz parte da contribuição
    da tese a geração da aplicação cliente Java Card e
    o tratamento formal da sua comunicação com a aplicação que reside no
    cartão, denominada de applet. Dessa forma, o trabalho proposto
    pretende contribuir de forma relevante ao desenvolvimento
    para smart cards, possibilitando a geração de aplicações
    Java Card completas (cliente e servidor), seguras e
    menos sujeitas a falhas.


  • Mostrar Abstract
  • As aplicações para smart cards representam um mercado
    que cresce a cada ano. Normalmente, essas aplicações
    manipulam e armazenam informações que requerem garantias de
    segurança, tais como valores monetários ou informações confidenciais.
    A qualidade e a segurança do software smart card pode ser aprimorada
    através de um processo de desenvolvimento rigoroso que empregue técnicas
    formais da engenharia de software. Neste trabalho propomos o
    método BSmart, uma especialização do método formal B dedicada
    ao desenvolvimento de aplicações para smart cards
    na linguagem Java Card. O método descreve, em um conjunto de etapas,
    como uma aplicação smart card pode ser gerada a partir de
    refinamentos em sua especificação formal. O trabalho a ser desenvolvido
    é um aprimoramento da dissertação de mestrado do autor desta proposta.
    No trabalho anterior, o foco maior foi o desenvolvimento inicial do método
    e das ferramentas essenciais para o desenvolvimento e geração de
    código de B para Java Card. No entanto, a verificação do processo de
    desenvolvimento e geração de código não foi tratada. O trabalho proposto
    na tese prioriza a formalização e a verificação de todo processo de
    refinamento descrito no método e das etapas de geração de
    código da aplicação Java Card. Também faz parte da contribuição
    da tese a geração da aplicação cliente Java Card e
    o tratamento formal da sua comunicação com a aplicação que reside no
    cartão, denominada de applet. Dessa forma, o trabalho proposto
    pretende contribuir de forma relevante ao desenvolvimento
    para smart cards, possibilitando a geração de aplicações
    Java Card completas (cliente e servidor), seguras e
    menos sujeitas a falhas.

6
  • ANA LUISA FERREIRA DE MEDEIROS
  • Uma Estratégia Dirigida a Modelos e Baseada em Linguagem de Descrição Arquitetural para Linhas de Produtos de Software

  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • THAIS VASCONCELOS BATISTA
  • ADILSON BARBOZA LOPES
  • UIRA KULESZA
  • ELISA YUMI NAKAGAWA
  • NOEMI DE LA ROCQUE RODRIGUEZ
  • Data: 30/07/2012

  • Mostrar Resumo
  • Estratégias orientadas a modelos tem sido usadas para facilitar a customização de produtos no contexto de Linhas de Produtos de Software (LPS) e geração de código-fonte desses produtos derivados através do gerenciamento de variabilidades. A maioria dessas estratégias faz uso da especificação de modelos em UML (Unified Modeling Language), que apesar de ser amplamente aplicada, possui algumas limitações por ser essencialmente gráfica, apresentar deficiência em descrever precisamente a semântica da representação da arquitetura do sistema e gerar um modelo extenso, o que dificulta a visualização e compreensão dos elementos do sistema. Já as linguagens de descrição arquiteturais (ADLs) oferecem suporte textual e gráfico para representação estrutural dos elementos arquiteturais, suas restrições e interações. Essa tese apresenta Arch-GingaForAll, uma estratégia dirigida a modelos especificados e configurados usando a ADL LightPL-ACME para gerenciamento de variabilidades do middleware de TV Digital Ginga. Tal estratégia está associada a um processo com atividades sistemáticas que permite a geração automática do código-fonte dos produtos do Ginga customizados a partir dos modelos. O Arch-GingaForAll integra o desenvolvimento orientado a aspectos (DSOA), desenvolvimento dirigido a modelos (DDM), e LPS, o que permite a modelagem explícita e modularização de variabilidades e características transversais. O processo é instanciado pela ferramenta Arch-GingaForAll que oferece suporte para a especificação, em LightPL-ACME, de modelos da arquitetura e produtos derivados do gerenciamento de variabilidade da LPS do Ginga, bem como a geração de código-fonte do produto customizado. De forma a avaliar a eficiência, aplicabilidade, expressividade e complexidade da estratégia Arch-GingaForAll, foi realizado um experimento controlado que avalia e compara a  ferramenta Arch-GingaForAll, com a ferramenta GingaForAll,  que instancia o processo que faz parte da estratégia GingaForAll, baseada em UML. Ambas as ferramentas foram usadas para configuração do produto da LPS do Ginga e geração de código-fonte desse produto. 


  • Mostrar Abstract
  • Estratégias orientadas a modelos tem sido usadas para facilitar a customização de produtos no contexto de Linhas de Produtos de Software (LPS) e geração de código-fonte desses produtos derivados através do gerenciamento de variabilidades. A maioria dessas estratégias faz uso da especificação de modelos em UML (Unified Modeling Language), que apesar de ser amplamente aplicada, possui algumas limitações por ser essencialmente gráfica, apresentar deficiência em descrever precisamente a semântica da representação da arquitetura do sistema e gerar um modelo extenso, o que dificulta a visualização e compreensão dos elementos do sistema. Já as linguagens de descrição arquiteturais (ADLs) oferecem suporte textual e gráfico para representação estrutural dos elementos arquiteturais, suas restrições e interações. Essa tese apresenta Arch-GingaForAll, uma estratégia dirigida a modelos especificados e configurados usando a ADL LightPL-ACME para gerenciamento de variabilidades do middleware de TV Digital Ginga. Tal estratégia está associada a um processo com atividades sistemáticas que permite a geração automática do código-fonte dos produtos do Ginga customizados a partir dos modelos. O Arch-GingaForAll integra o desenvolvimento orientado a aspectos (DSOA), desenvolvimento dirigido a modelos (DDM), e LPS, o que permite a modelagem explícita e modularização de variabilidades e características transversais. O processo é instanciado pela ferramenta Arch-GingaForAll que oferece suporte para a especificação, em LightPL-ACME, de modelos da arquitetura e produtos derivados do gerenciamento de variabilidade da LPS do Ginga, bem como a geração de código-fonte do produto customizado. De forma a avaliar a eficiência, aplicabilidade, expressividade e complexidade da estratégia Arch-GingaForAll, foi realizado um experimento controlado que avalia e compara a  ferramenta Arch-GingaForAll, com a ferramenta GingaForAll,  que instancia o processo que faz parte da estratégia GingaForAll, baseada em UML. Ambas as ferramentas foram usadas para configuração do produto da LPS do Ginga e geração de código-fonte desse produto. 

7
  • WAGNER EMANOEL COSTA
  • Flow-Shop de Permutação Variante Total Flowtime: um Estudo Algorítmico

  • Orientador : MARCO CESAR GOLDBARG
  • MEMBROS DA BANCA :
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MARCO CESAR GOLDBARG
  • MARCIA HELENA COSTA FAMPA
  • MYRIAM REGATTIERI DE BIASE DA SILVA DELGADO
  • REGIVAN HUGO NUNES SANTIAGO
  • THAIS VASCONCELOS BATISTA
  • Data: 14/09/2012

  • Mostrar Resumo
  • A presente tese desenvolve um levantamento do estado da arte abordando os mais recentes algoritmos de solução para o Problema Flowshop de Permutação (PFP) e realiza a implementação computacional de alguns algoritmos da literatura selecionados dentre os mais eficientes existentes. Os algoritmos implementados possuem seu desempenho computacional verificado em conjuntos de casos teste propostos na literatura. O trabalho desenvolve dois novos algoritmos de solução para o problema, o primeiro baseado nas técnicas GRASP (Greedy Randomized Adaptive Search Procedure) e o segundo baseado nas técnicas de nuvem de partículas (particle Swarm). Os dois algoritmos propostos são implementados computacionalmente e possuem seu desempenho computacional verificado em conjuntos de casos teste propostos na literatura. Os algoritmos selecionados da literatura então são comparados com os algoritmos propostos através de um experimento computacional estaticamente significativo de forma que conclusões sobre contribuições sejam inferidas com base nas evidências constatadas. Adicionalmente novas melhores soluções são relatadas para alguns casos teste da literatura.


  • Mostrar Abstract
  • A presente tese desenvolve um levantamento do estado da arte abordando os mais recentes algoritmos de solução para o Problema Flowshop de Permutação (PFP) e realiza a implementação computacional de alguns algoritmos da literatura selecionados dentre os mais eficientes existentes. Os algoritmos implementados possuem seu desempenho computacional verificado em conjuntos de casos teste propostos na literatura. O trabalho desenvolve dois novos algoritmos de solução para o problema, o primeiro baseado nas técnicas GRASP (Greedy Randomized Adaptive Search Procedure) e o segundo baseado nas técnicas de nuvem de partículas (particle Swarm). Os dois algoritmos propostos são implementados computacionalmente e possuem seu desempenho computacional verificado em conjuntos de casos teste propostos na literatura. Os algoritmos selecionados da literatura então são comparados com os algoritmos propostos através de um experimento computacional estaticamente significativo de forma que conclusões sobre contribuições sejam inferidas com base nas evidências constatadas. Adicionalmente novas melhores soluções são relatadas para alguns casos teste da literatura.

8
  • FAGNER LEMOS DE SANTANA
  • Generalizações do Conceito de Distância, i-Distâncias, Distâncias Intervalares e Topologia.

  • Orientador : REGIVAN HUGO NUNES SANTIAGO
  • MEMBROS DA BANCA :
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • MARCELO FERREIRA SIQUEIRA
  • REGIVAN HUGO NUNES SANTIAGO
  • WELDON ALEXANDER LODWICK
  • WILSON ROSA DE OLIVEIRA JUNIOR
  • Data: 30/11/2012

  • Mostrar Resumo
  • Neste trabalho são apresentadas algumas generalizações do conceito de distância, como as métricas difusas, métricas probabilísticas e métricas generalizadas. É mostrado de que maneiras essas generalizações podem ser úteis, tendo em vista a possibilidade de que a distância entre dois objetos possa carregar uma quantidade maior de informação sobre os mesmos do que no caso em que a distância é representada por um número real. Também é feita a proposta de uma outra generalização de distância, a qual é feita com o intuito de englobar uma noção de métrica intervalar que gere uma topologia de maneira natural. Várias propriedades desta generalização são investigadas, além de suas ligações com as outras generalizações já existentes. 


  • Mostrar Abstract
  • Neste trabalho são apresentadas algumas generalizações do conceito de distância, como as métricas difusas, métricas probabilísticas e métricas generalizadas. É mostrado de que maneiras essas generalizações podem ser úteis, tendo em vista a possibilidade de que a distância entre dois objetos possa carregar uma quantidade maior de informação sobre os mesmos do que no caso em que a distância é representada por um número real. Também é feita a proposta de uma outra generalização de distância, a qual é feita com o intuito de englobar uma noção de métrica intervalar que gere uma topologia de maneira natural. Várias propriedades desta generalização são investigadas, além de suas ligações com as outras generalizações já existentes. 

9
  • PLACIDO ANTONIO DE SOUZA NETO
  • A Methodology for Building Service-Oriented Applications in the presence of Non-Functional Properties

  • Orientador : MARTIN ALEJANDRO MUSICANTE
  • MEMBROS DA BANCA :
  • GENOVEVA VARGAS SOLAR
  • MARCIA JACYNTHA NUNES RODRIGUES LUCENA
  • MARTIN ALEJANDRO MUSICANTE
  • NELSON SOUTO ROSA
  • SILVIA REGINA VERGÍLIO
  • VALERIA DE CASTRO
  • Data: 11/12/2012

  • Mostrar Resumo
  •     This thesis presents piSOD-M (Policy-based Service Oriented Development Methodology), a methodology for modeling service-based applications using policies. It proposes a model driven method with: (i) a set of meta-models for representing non-functional constraints associated to service-based applications, starting from an use case model until a service composition model; (ii) a platform providing guidelines for expressing the composition and the policies; (iii) model-to-model and model-to-text transformation rules for semi-automatizing the implementation of reliable service-based applications; and (iv) an environment that implements these meta-models and rules, and enables the application of pi-SOD-M. This thesis also presents a classification and nomenclature for non-functional requirements for developing service-oriented applications. Our approach is intended to add value to the development of service-oriented applications that have quality requirements needs. This work uses concepts from the service-oriented development, non-functional requirements design and model-driven development areas to propose a solution that minimizes the problem of reliable service modeling. Some examples are developed as proof of concepts.


  • Mostrar Abstract
  •     This thesis presents piSOD-M (Policy-based Service Oriented Development Methodology), a methodology for modeling service-based applications using policies. It proposes a model driven method with: (i) a set of meta-models for representing non-functional constraints associated to service-based applications, starting from an use case model until a service composition model; (ii) a platform providing guidelines for expressing the composition and the policies; (iii) model-to-model and model-to-text transformation rules for semi-automatizing the implementation of reliable service-based applications; and (iv) an environment that implements these meta-models and rules, and enables the application of pi-SOD-M. This thesis also presents a classification and nomenclature for non-functional requirements for developing service-oriented applications. Our approach is intended to add value to the development of service-oriented applications that have quality requirements needs. This work uses concepts from the service-oriented development, non-functional requirements design and model-driven development areas to propose a solution that minimizes the problem of reliable service modeling. Some examples are developed as proof of concepts.

10
  • ANDERSON PAIVA CRUZ
  • On Fuzzy Implications Classes – Towards Extensions of Fuzzy Rule-Based Systems.



  • Orientador : REGIVAN HUGO NUNES SANTIAGO
  • MEMBROS DA BANCA :
  • REGIVAN HUGO NUNES SANTIAGO
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • ELAINE GOUVEA PIMENTEL
  • GRAÇALIZ PEREIRA DIMURO
  • RUY JOSÉ GUERRA BARRETTO DE QUEIROZ
  • Data: 20/12/2012

  • Mostrar Resumo
  • There is not only one acceptable fuzzy implication de nition nowadays. In a theoretical viewpoint, this fact evinces a lack of consensus
    on the logical implication meaning in Boolean and fuzzy contexts. In a practical viewpoint, it induces the ignorance about which "implication operators" the software engineer can apply in a Fuzzy Rule Based System (FRBS) which in turn generates FRBSs less appropriated with respect to1 their appliance domain. In order to a better understanding about logical connectives, it is necessary to known which properties are satisfied ed for them. Therefore, towards to corroborate with fuzzy implication meaning and for a contribution to implement FRBSs more appropriated to their domain, several Boolean laws have been generalized and studied as equations or inequations in fuzzy logics. Those generalizations are called Boolean-like laws and a lot of them do not remain valid in any fuzzy semantics. In this scenario, this proposal brings an investigation of under which sucient and necessary conditions three Boolean-like laws - y =< I(x; y), I(x; I(y; x)) = 1 and I(x; I(y; z)) = I(I(x; y); I(x; z)) - holds for the three best-known classes of fuzzy implications and when they generated by automorphisms.


  • Mostrar Abstract
  • There is not only one acceptable fuzzy implication de nition nowadays. In a theoretical viewpoint, this fact evinces a lack of consensus
    on the logical implication meaning in Boolean and fuzzy contexts. In a practical viewpoint, it induces the ignorance about which "implication operators" the software engineer can apply in a Fuzzy Rule Based System (FRBS) which in turn generates FRBSs less appropriated with respect to1 their appliance domain. In order to a better understanding about logical connectives, it is necessary to known which properties are satisfied ed for them. Therefore, towards to corroborate with fuzzy implication meaning and for a contribution to implement FRBSs more appropriated to their domain, several Boolean laws have been generalized and studied as equations or inequations in fuzzy logics. Those generalizations are called Boolean-like laws and a lot of them do not remain valid in any fuzzy semantics. In this scenario, this proposal brings an investigation of under which sucient and necessary conditions three Boolean-like laws - y =< I(x; y), I(x; I(y; x)) = 1 and I(x; I(y; z)) = I(I(x; y); I(x; z)) - holds for the three best-known classes of fuzzy implications and when they generated by automorphisms.

2011
Dissertações
1
  • Felipe Alves Pereira Pinto
  • Um Framework Baseado em Modelos Para Desenvolvimento de Sistemas Multimídia Distribuídos Autoadaptativos

  • Orientador : ADILSON BARBOZA LOPES
  • MEMBROS DA BANCA :
  • ADILSON BARBOZA LOPES
  • UIRA KULESZA
  • NELSON SOUTO ROSA
  • Data: 19/01/2011

  • Mostrar Resumo
  • Sistemas multimídia distribuídos possuem características bastante variáveis, podendo implicar em novos requisitos à medida que novas tecnologias são disponibilizadas ou na necessidade de adequação de acordo com a quantidade de recursos disponíveis. Dessa forma, tais aplicações devem ser capazes de realizar ajustes e adaptações dinâmicas, permitindo alterar sua estrutura e comportamento. Objetivando prover capacidades de autoadaptação nesses sistemas, este trabalho apresenta uma abordagem de adaptação baseada em modelos, propondo um framework reflexivo e baseado em componentes para a construção e suporte de sistemas multimídia distribuídos autoadaptativos, fornecendo várias facilidades para o desenvolvimento e evolução de tais sistemas, como adaptação dinâmica. A proposta do framework é manter um ou mais modelos de representação do sistema em tempo de execução, de modo que alguma entidade externa possa realizar uma análise desses modelos identificando problemas e tentando resolvê-los. Esses modelos integram o metanível reflexivo das aplicações atuando como uma autorrepresentação do sistema. Para isso, o framework define um metamodelo para a descrição de aplicações multimídia distribuídas autoadaptativas, o qual é capaz de representar componentes e seus relacionamentos, políticas para especificação de QoS e ações de adaptação. Adicionalmente, é proposta uma ADL e uma arquitetura para adaptação baseada em modelos. Como estudo de caso o trabalho apresenta alguns cenários buscando exemplificar o uso do framework na prática, com e sem o uso da ADL, bem como verificar algumas características relacionadas à adaptação dinâmica.


  • Mostrar Abstract
  • Sistemas multimídia distribuídos possuem características bastante variáveis, podendo implicar em novos requisitos à medida que novas tecnologias são disponibilizadas ou na necessidade de adequação de acordo com a quantidade de recursos disponíveis. Dessa forma, tais aplicações devem ser capazes de realizar ajustes e adaptações dinâmicas, permitindo alterar sua estrutura e comportamento. Objetivando prover capacidades de autoadaptação nesses sistemas, este trabalho apresenta uma abordagem de adaptação baseada em modelos, propondo um framework reflexivo e baseado em componentes para a construção e suporte de sistemas multimídia distribuídos autoadaptativos, fornecendo várias facilidades para o desenvolvimento e evolução de tais sistemas, como adaptação dinâmica. A proposta do framework é manter um ou mais modelos de representação do sistema em tempo de execução, de modo que alguma entidade externa possa realizar uma análise desses modelos identificando problemas e tentando resolvê-los. Esses modelos integram o metanível reflexivo das aplicações atuando como uma autorrepresentação do sistema. Para isso, o framework define um metamodelo para a descrição de aplicações multimídia distribuídas autoadaptativas, o qual é capaz de representar componentes e seus relacionamentos, políticas para especificação de QoS e ações de adaptação. Adicionalmente, é proposta uma ADL e uma arquitetura para adaptação baseada em modelos. Como estudo de caso o trabalho apresenta alguns cenários buscando exemplificar o uso do framework na prática, com e sem o uso da ADL, bem como verificar algumas características relacionadas à adaptação dinâmica.

2
  • ANTONIO COSME DE SOUZA JUNIOR
  • Avaliação do Uso de Smartphones na Interação com as Aplicações da Televisão Digital Brasileira

  • Orientador : JAIR CAVALCANTI LEITE
  • MEMBROS DA BANCA :
  • GUIDO LEMOS DE SOUZA FILHO
  • JAIR CAVALCANTI LEITE
  • MARCOS CESAR MADRUGA ALVES PINHEIRO
  • Data: 31/01/2011

  • Mostrar Resumo
  • O Brasil atualmente passa pelo processo da transição da transmissão analógica para a transmissão digital. Essa nova tecnologia, além de disponibilizar uma qualidade altíssima de áudio e vídeo, também possibilita a execução de aplicativos na televisão. Equipamentos chamados conversores digitais são necessários para permitir a recepção desse novo sinal além de criar o ambiente apropriado necessário para a execução desses aplicativos. A princípio a única forma de interagir com esses aplicativos se dá por meio do controle remoto. Entretanto, o controle remoto apresenta graves problemas de usabilidade ao ser utilizado em alguns tipos de aplicações. A partir desse problema, esse trabalho propõe a implementação de recursos de software capazes de permitir que essa interação possa ser realizada com a ajuda de smartphones. Além dessa implementação, é realizado um estudo comparativo entre o uso do controle remoto e do smartphone para promover interação com as aplicações da televisão digital, levando em consideração parâmetros relacionados à usabilidade. Após a análise dos dados coletados por essa comparação é possível identificar qual dispositivo possibilita uma experiência interativa mais interessante aos usuários.

     


  • Mostrar Abstract
  • O Brasil atualmente passa pelo processo da transição da transmissão analógica para a transmissão digital. Essa nova tecnologia, além de disponibilizar uma qualidade altíssima de áudio e vídeo, também possibilita a execução de aplicativos na televisão. Equipamentos chamados conversores digitais são necessários para permitir a recepção desse novo sinal além de criar o ambiente apropriado necessário para a execução desses aplicativos. A princípio a única forma de interagir com esses aplicativos se dá por meio do controle remoto. Entretanto, o controle remoto apresenta graves problemas de usabilidade ao ser utilizado em alguns tipos de aplicações. A partir desse problema, esse trabalho propõe a implementação de recursos de software capazes de permitir que essa interação possa ser realizada com a ajuda de smartphones. Além dessa implementação, é realizado um estudo comparativo entre o uso do controle remoto e do smartphone para promover interação com as aplicações da televisão digital, levando em consideração parâmetros relacionados à usabilidade. Após a análise dos dados coletados por essa comparação é possível identificar qual dispositivo possibilita uma experiência interativa mais interessante aos usuários.

     

3
  • LEONARDO CESAR TEONACIO BEZERRA
  • Uma Colônia de Formigas para o Problema de Caminho mais Curto Multiobjetivo

  • Orientador : ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MEMBROS DA BANCA :
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • ANNE MAGALY DE PAULA CANUTO
  • MARCO CESAR GOLDBARG
  • LUCIANA SALETE BURIOL
  • Data: 07/02/2011

  • Mostrar Resumo
  • Problemas de otimização combinatória são problemas presentes no cotidiano de diversas
    aplicações práticas, desde modelos de produção industrial até serviços de navegação. Em
    algumas situações, modelar problemas reais exige a utilização de mais de um objetivo a
    ser otimizado. O Problema do Caminho mais Curto Multiobjetivo (MSP, do inglês
    Multiobjective Shortest Path) é um exemplo desta categoria, e consiste em encontrar
    caminhos mínimos entre vértices de um grafo. Neste trabalho, faz-se uma revisão da
    literatura apresentada para o MSP, e é proposta uma metaheurística denominada GRACE,
    baseada no modelo das Colônias de Formigas. Diferentes versões foram implementadas,
    e foram realizados experimentos comparando o algoritmo proposto com um algoritmo
    similar encontrado no estado da arte do MSP e com o NSGA-II, um algoritmo
    evolucionário multiobjetivo bem conhecido. Os resultados encontrados foram
    competitivos segundo o ranking de dominância e os indicadores de qualidade utilizados.


  • Mostrar Abstract
  • Problemas de otimização combinatória são problemas presentes no cotidiano de diversas
    aplicações práticas, desde modelos de produção industrial até serviços de navegação. Em
    algumas situações, modelar problemas reais exige a utilização de mais de um objetivo a
    ser otimizado. O Problema do Caminho mais Curto Multiobjetivo (MSP, do inglês
    Multiobjective Shortest Path) é um exemplo desta categoria, e consiste em encontrar
    caminhos mínimos entre vértices de um grafo. Neste trabalho, faz-se uma revisão da
    literatura apresentada para o MSP, e é proposta uma metaheurística denominada GRACE,
    baseada no modelo das Colônias de Formigas. Diferentes versões foram implementadas,
    e foram realizados experimentos comparando o algoritmo proposto com um algoritmo
    similar encontrado no estado da arte do MSP e com o NSGA-II, um algoritmo
    evolucionário multiobjetivo bem conhecido. Os resultados encontrados foram
    competitivos segundo o ranking de dominância e os indicadores de qualidade utilizados.

4
  • PEDRO PETROVITCH CAETANO MAIA
  • MyPersonal-EPG: Um EPG Personalizável e com Suporte a Recomendações para o SBTVD

  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • THAIS VASCONCELOS BATISTA
  • JAIR CAVALCANTI LEITE
  • CARLOS ANDRE GUIMARÃES FERRAZ
  • Data: 10/02/2011

  • Mostrar Resumo
  • Neste trabalho apresentamos a arquitetura e implementação do MyPersonal-EPG, um EPG personalizável e com suporte a recomendações, construído sobre o middleware Ginga, que atende aos seguintes requisitos: (i) permitir aos usuários a montagem da sua própria grade de programação, com base nas grades de programação de diversas emissoras, (ii) oferecer um mecanismo para sintonizar os devidos canais no momento em que os programas selecionados pelo usuário estiverem prestes a começar, (iii) permitir que os usuários selecionem categorias de programas desejadas, (iv) oferecer recomendações de programas, de forma síncrona e assíncrona, com base nas categorias selecionadas previamente pelos usuários, (v) permitir que os usuários modifiquem as opções de configuração, (vi) possibilitar a criação de diversas contas de usuários a fim de permitir que cada usuário possa armazenas todas as suas informações de interesse. A avaliação de usabilidade da aplicação é também apresentada e seus resultados são discutidos e analisados.


  • Mostrar Abstract
  • Neste trabalho apresentamos a arquitetura e implementação do MyPersonal-EPG, um EPG personalizável e com suporte a recomendações, construído sobre o middleware Ginga, que atende aos seguintes requisitos: (i) permitir aos usuários a montagem da sua própria grade de programação, com base nas grades de programação de diversas emissoras, (ii) oferecer um mecanismo para sintonizar os devidos canais no momento em que os programas selecionados pelo usuário estiverem prestes a começar, (iii) permitir que os usuários selecionem categorias de programas desejadas, (iv) oferecer recomendações de programas, de forma síncrona e assíncrona, com base nas categorias selecionadas previamente pelos usuários, (v) permitir que os usuários modifiquem as opções de configuração, (vi) possibilitar a criação de diversas contas de usuários a fim de permitir que cada usuário possa armazenas todas as suas informações de interesse. A avaliação de usabilidade da aplicação é também apresentada e seus resultados são discutidos e analisados.

5
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • Algoritmos transgenéticos aplicados ao problema da árvore geradora biobjetivo

  • Orientador : MARCO CESAR GOLDBARG
  • MEMBROS DA BANCA :
  • MARCO CESAR GOLDBARG
  • ANNE MAGALY DE PAULA CANUTO
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • HORACIO HIDEKI YANASSE
  • Data: 17/02/2011

  • Mostrar Resumo
  • A Árvore Geradora Multiobjetivo é um problema de Otimização Combinatória NP árduo. Esse problema possui aplicação em diversas áreas, em especial, no projeto de redes. Nesse trabalho, propõe-se um Algoritmo Evolucionário baseado na metáfora da Transgenética Computacional para a solução do problema em sua versão biobjetivo, ainda que o algoritmo desenvolvido possa ser adaptado para contemplar mais de dois objetivos. A inspiração da Transgenética Computacional está na cooperação (e não na competição) como fator de maior influência para a evolução. O algoritmo proposto é comparado a outros três algoritmos trangenéticos já apresentados para o problema tratado. Os experimentos computacionais abrangem ainda a comparação do algoritmo desenvolvido a abordagens recentes da literatura que obtêm excelentes resultados. A eficiência do método apresentado é avaliada com base em medidas de qualidade de solução e tempo computacional despendido. Uma vez que o problema se insere no contexto da Otimização Multiobjetivo, indicadores de qualidade são utilizados para inferir o critério de qualidade de soluções obtidas. Testes estatísticos avaliam a significância dos resultados obtidos nos experimentos computacionais


  • Mostrar Abstract
  • A Árvore Geradora Multiobjetivo é um problema de Otimização Combinatória NP árduo. Esse problema possui aplicação em diversas áreas, em especial, no projeto de redes. Nesse trabalho, propõe-se um Algoritmo Evolucionário baseado na metáfora da Transgenética Computacional para a solução do problema em sua versão biobjetivo, ainda que o algoritmo desenvolvido possa ser adaptado para contemplar mais de dois objetivos. A inspiração da Transgenética Computacional está na cooperação (e não na competição) como fator de maior influência para a evolução. O algoritmo proposto é comparado a outros três algoritmos trangenéticos já apresentados para o problema tratado. Os experimentos computacionais abrangem ainda a comparação do algoritmo desenvolvido a abordagens recentes da literatura que obtêm excelentes resultados. A eficiência do método apresentado é avaliada com base em medidas de qualidade de solução e tempo computacional despendido. Uma vez que o problema se insere no contexto da Otimização Multiobjetivo, indicadores de qualidade são utilizados para inferir o critério de qualidade de soluções obtidas. Testes estatísticos avaliam a significância dos resultados obtidos nos experimentos computacionais

6
  • MÁRIO SÉRGIO SCARAMUZZI TORRES
  • Avaliação Sistemática de Abordagens de Derivação de Produto


  • Orientador : UIRA KULESZA
  • MEMBROS DA BANCA :
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • THAIS VASCONCELOS BATISTA
  • UIRA KULESZA
  • VANDER RAMOS ALVES
  • Data: 17/02/2011

  • Mostrar Resumo
  • Esta dissertação de mestrado busca avaliar de forma sistemática
    abordagens e ferramentas de derivação automática de produtos, através
    do desenvolvimento de diferentes estudos empíricos. Os estudos foram
    desenvolvidos sob duas perspectivas: (i) qualitativa - através da análise de características das ferramentas; e (ii) quantitativa - através da quantificação de propriedades específicas de artefatos de
    derivação produzidos para as ferramentas. Um conjunto de critérios e
    métricas foram também propostos com o objetivo de oferecer suporte
    para as análise qualitativas e quantitativas. Duas linhas de produto
    uma para o domínio de sistemas web e outra para aplicação de
    dispositivos móveis são alvos do nosso estudo.


  • Mostrar Abstract
  • Esta dissertação de mestrado busca avaliar de forma sistemática
    abordagens e ferramentas de derivação automática de produtos, através
    do desenvolvimento de diferentes estudos empíricos. Os estudos foram
    desenvolvidos sob duas perspectivas: (i) qualitativa - através da análise de características das ferramentas; e (ii) quantitativa - através da quantificação de propriedades específicas de artefatos de
    derivação produzidos para as ferramentas. Um conjunto de critérios e
    métricas foram também propostos com o objetivo de oferecer suporte
    para as análise qualitativas e quantitativas. Duas linhas de produto
    uma para o domínio de sistemas web e outra para aplicação de
    dispositivos móveis são alvos do nosso estudo.

7
  • DANIEL CUNHA DA SILVA
  • MoSAC: Um Módulo para Seleção de Configurações Arquiteturais Baseado em Critérios de QoS no Contexto de Sistemas Distribuidos Autoadaptativos

  • Orientador : ADILSON BARBOZA LOPES
  • MEMBROS DA BANCA :
  • ADILSON BARBOZA LOPES
  • JAIR CAVALCANTI LEITE
  • GLEDSON ELIAS DA SILVEIRA
  • Data: 17/02/2011

  • Mostrar Resumo
  • O processo para a escolha dos melhores componentes a serem usados na construção de sistemas tem se tornado cada vez mais complexo; isso se torna mais crítico quando precisamos considerar várias combinações de componentes a serem escolhidos no contexto de uma configuração arquitetural. Essa preocupação ocorre, principalmente, quando lidamos com sistemas que envolvem requisitos críticos, como por exemplo, as restrições temporais nos sistemas multimídia distribuídos, a largura de banda da rede nas aplicações móveis ou até mesmo a confiabilidade em sistemas de tempo real. Este trabalho propõe um processo de seleção dinâmica de configurações arquiteturais baseado nos critérios de QoS do sistema, os quais poderão ser utilizados durante uma adaptação dinâmica. A presente proposta utiliza a teoria MAUT (Multi-Attribute Utility Theory) para a tomada de decisão a partir de um conjunto finito de possibilidades, as quais envolvem múltiplos critérios a serem analisados. Adicionalmente, foi proposto um metamodelo capaz de descrever as necessidades da aplicação, em termos de critérios de QoS e seus respectivos valores esperados, para que as mesmas possam ser interpretadas pelo processo a fim de realizar a seleção da configuração desejada. Como prova de conceito, foi implementado um módulo que realiza a escolha dinâmica das configurações, o MoSAC. Esse módulo foi implementado utilizando a abordagem de desenvolvimento baseado em componentes (DBC) realizando a seleção das configurações arquiteturais baseado no processo de seleção proposto neste trabalho envolvendo múltiplos critérios de QoS. Esse trabalho também apresenta um estudo do caso onde foi desenvolvido uma aplicação no contexto de TV Digital para avaliar o tempo que o módulo gasta para retornar uma configuração válida a ser utilizada em um middleware com características autoadaptativas; para isso foi utilizado o middleware AdaptTV.


  • Mostrar Abstract
  • O processo para a escolha dos melhores componentes a serem usados na construção de sistemas tem se tornado cada vez mais complexo; isso se torna mais crítico quando precisamos considerar várias combinações de componentes a serem escolhidos no contexto de uma configuração arquitetural. Essa preocupação ocorre, principalmente, quando lidamos com sistemas que envolvem requisitos críticos, como por exemplo, as restrições temporais nos sistemas multimídia distribuídos, a largura de banda da rede nas aplicações móveis ou até mesmo a confiabilidade em sistemas de tempo real. Este trabalho propõe um processo de seleção dinâmica de configurações arquiteturais baseado nos critérios de QoS do sistema, os quais poderão ser utilizados durante uma adaptação dinâmica. A presente proposta utiliza a teoria MAUT (Multi-Attribute Utility Theory) para a tomada de decisão a partir de um conjunto finito de possibilidades, as quais envolvem múltiplos critérios a serem analisados. Adicionalmente, foi proposto um metamodelo capaz de descrever as necessidades da aplicação, em termos de critérios de QoS e seus respectivos valores esperados, para que as mesmas possam ser interpretadas pelo processo a fim de realizar a seleção da configuração desejada. Como prova de conceito, foi implementado um módulo que realiza a escolha dinâmica das configurações, o MoSAC. Esse módulo foi implementado utilizando a abordagem de desenvolvimento baseado em componentes (DBC) realizando a seleção das configurações arquiteturais baseado no processo de seleção proposto neste trabalho envolvendo múltiplos critérios de QoS. Esse trabalho também apresenta um estudo do caso onde foi desenvolvido uma aplicação no contexto de TV Digital para avaliar o tempo que o módulo gasta para retornar uma configuração válida a ser utilizada em um middleware com características autoadaptativas; para isso foi utilizado o middleware AdaptTV.

8
  • RODRIGO PINHEIRO MARQUES DE ARAUJO
  • Midgard: Um Middleware Baseado em Componentes e Orientado a Recursos para Redes de Sensores sem Fio

  • Orientador : FLAVIA COIMBRA DELICATO
  • MEMBROS DA BANCA :
  • FLAVIA COIMBRA DELICATO
  • ADILSON BARBOZA LOPES
  • MARCOS CESAR MADRUGA ALVES PINHEIRO
  • LUCI PIRMEZ
  • Data: 18/02/2011

  • Mostrar Resumo
  • Nos últimos anos, foram propostas diversas plataformas de middleware para Redes de
    Sensores Sem Fio (RSSF). Este trabalho apresenta o Midgard, um middleware para RSSFs
    baseado em componentes que adota os padrões arquiteturais microkernel e REST. Os dois
    principais objetivos do Midgard são (i) prover fácil acesso via Web aos dados gerados pela RSSF,
    tratando tais dados como recursos Web, seguindo os princípios do paradigma Web of Things, e (ii)
    prover aos desenvolvedores de aplicações para RSSF capacidades para a instanciação apenas dos
    serviços específicos exigidos pela aplicação, dessa forma gerando um middleware customizado e
    economizando recursos dos nós.


  • Mostrar Abstract
  • Nos últimos anos, foram propostas diversas plataformas de middleware para Redes de
    Sensores Sem Fio (RSSF). Este trabalho apresenta o Midgard, um middleware para RSSFs
    baseado em componentes que adota os padrões arquiteturais microkernel e REST. Os dois
    principais objetivos do Midgard são (i) prover fácil acesso via Web aos dados gerados pela RSSF,
    tratando tais dados como recursos Web, seguindo os princípios do paradigma Web of Things, e (ii)
    prover aos desenvolvedores de aplicações para RSSF capacidades para a instanciação apenas dos
    serviços específicos exigidos pela aplicação, dessa forma gerando um middleware customizado e
    economizando recursos dos nós.

9
  • TANIRO CHACON RODRIGUES
  • Uma Abordagem Dirigida a Modelos para Construção de Aplicações para Redes de Sensores sem Fio

  • Orientador : FLAVIA COIMBRA DELICATO
  • MEMBROS DA BANCA :
  • FLAVIA COIMBRA DELICATO
  • PAULO DE FIGUEIREDO PIRES
  • THAIS VASCONCELOS BATISTA
  • LUCI PIRMEZ
  • Data: 21/02/2011

  • Mostrar Resumo
  • A pesquisa sobre Redes de Sensores Sem Fio (RSSF) evoluiu ao longo dos últimos
    anos com aplicações potenciais em diversos domínios. Entretanto, o desenvolvimento de
    aplicações de RSSF é uma tarefa complexa, dentre outros fatores, pela necessidade da
    programação no (baixo) nível de abstração provido pelo sistema operacional dos sensores e de
    conhecimentos específicos, tanto dos diferentes domínios de aplicações quanto das diferentes
    plataformas de sensores. Neste trabalho, propomos uma abordagem MDA para desenvolver
    aplicações de RSSF, que visa facilitar a tarefa dos desenvolvedores. Esta abordagem permite a
    contribuição direta dos especialistas de domínio no desenvolvimento de aplicações sem requerer
    conhecimento de programação em plataformas de RSSF e, ao mesmo tempo permite que
    especialistas em rede programem sensores aderentes aos requisitos da aplicação sem conhecimento
    específico do domínio da aplicação. A abordagem também promove o reúso de artefatos de
    software desenvolvidos, permitindo um modelo de aplicação ser reutilizado em diferentes
    plataformas de sensores e que o modelo de uma plataforma de sensores possa ser reutilizado em
    diferentes aplicações.


  • Mostrar Abstract
  • A pesquisa sobre Redes de Sensores Sem Fio (RSSF) evoluiu ao longo dos últimos
    anos com aplicações potenciais em diversos domínios. Entretanto, o desenvolvimento de
    aplicações de RSSF é uma tarefa complexa, dentre outros fatores, pela necessidade da
    programação no (baixo) nível de abstração provido pelo sistema operacional dos sensores e de
    conhecimentos específicos, tanto dos diferentes domínios de aplicações quanto das diferentes
    plataformas de sensores. Neste trabalho, propomos uma abordagem MDA para desenvolver
    aplicações de RSSF, que visa facilitar a tarefa dos desenvolvedores. Esta abordagem permite a
    contribuição direta dos especialistas de domínio no desenvolvimento de aplicações sem requerer
    conhecimento de programação em plataformas de RSSF e, ao mesmo tempo permite que
    especialistas em rede programem sensores aderentes aos requisitos da aplicação sem conhecimento
    específico do domínio da aplicação. A abordagem também promove o reúso de artefatos de
    software desenvolvidos, permitindo um modelo de aplicação ser reutilizado em diferentes
    plataformas de sensores e que o modelo de uma plataforma de sensores possa ser reutilizado em
    diferentes aplicações.

10
  • WANDERSON CAMARA DOS SANTOS
  • Uma Abordagem Dirigida por Modelos para Gerência de Variabilidades e Execução de Processos de Software

  • Orientador : UIRA KULESZA
  • MEMBROS DA BANCA :
  • GIBEON SOARES DE AQUINO JUNIOR
  • JAIR CAVALCANTI LEITE
  • LEONARDO GRESTA PAULINO MURTA
  • UIRA KULESZA
  • Data: 23/02/2011

  • Mostrar Resumo
  • Esta dissertação de mestrado propõe uma abordagem dirigida por modelos para gerência e customização de variabilidades em linhas de processos  de software. A abordagem busca promover o reuso de artefatos de  processo, assim como a integração e automação da definição,  customização, implantação e execução de linhas deprocessos de  software. Ela é fundamentada nos princípios e técnicas de engenharia  de linhas de produto de software e engenharia dirigida por modelos. A  abordagem é avaliada através de uma implementação usando tecnologias  dirigidas por modelos disponíveis na plataforma Eclipse, e de um  estudo de caso de modelagem da família de processos OpenUP.


  • Mostrar Abstract
  • Esta dissertação de mestrado propõe uma abordagem dirigida por modelos para gerência e customização de variabilidades em linhas de processos  de software. A abordagem busca promover o reuso de artefatos de  processo, assim como a integração e automação da definição,  customização, implantação e execução de linhas deprocessos de  software. Ela é fundamentada nos princípios e técnicas de engenharia  de linhas de produto de software e engenharia dirigida por modelos. A  abordagem é avaliada através de uma implementação usando tecnologias  dirigidas por modelos disponíveis na plataforma Eclipse, e de um  estudo de caso de modelagem da família de processos OpenUP.

11
  • LEONIDAS DA SILVA BARBOSA
  • Aprendizado Significativo Aplicado ao Ensino de Algoritmos

  • Orientador : ANDRE MAURICIO CUNHA CAMPOS
  • MEMBROS DA BANCA :
  • ANA LUCIA SARMENTO HENRIQUE
  • ANDRE MAURICIO CUNHA CAMPOS
  • APUENA VIEIRA GOMES
  • SELAN RODRIGUES DOS SANTOS
  • Data: 25/02/2011

  • Mostrar Resumo
  • As disciplinas de algoritmos e programação se revelam para muitos alunos como barreiras durante os cursos de computação. Estes, não habituados com novas formas de raciocinar requerida pela disciplina, encontram dificuldades que, por vezes, culminam na reprovação ou evasão. Diante de tal problemática, realizamos neste trabalho, um levantamento sobre os problemas vivenciados pelos alunos com forma de entender e nortear soluções buscadas na tentativa de resolver ou amenizar as dificuldades encontradas pelos alunos. A partir deste levantamento, elaboramos uma metodologia a ser aplicada em sala de aula baseados conceitos da Teoria do Aprendizado Significativo de David Ausubel. Além dessa proposta, desenvolvemos igualmente uma ferramenta de apoio à prática de algoritmos cujo objetivo é de melhor incentivar os alunos no aprendizado de algoritmos e no exercício de raciocínio lógico. Por fim, uma avaliação comparativa entre a metodologia proposta e outra, sem uso dos recursos de aprendizagem significativa, foi realizada e seus resultados analisados.


  • Mostrar Abstract
  • As disciplinas de algoritmos e programação se revelam para muitos alunos como barreiras durante os cursos de computação. Estes, não habituados com novas formas de raciocinar requerida pela disciplina, encontram dificuldades que, por vezes, culminam na reprovação ou evasão. Diante de tal problemática, realizamos neste trabalho, um levantamento sobre os problemas vivenciados pelos alunos com forma de entender e nortear soluções buscadas na tentativa de resolver ou amenizar as dificuldades encontradas pelos alunos. A partir deste levantamento, elaboramos uma metodologia a ser aplicada em sala de aula baseados conceitos da Teoria do Aprendizado Significativo de David Ausubel. Além dessa proposta, desenvolvemos igualmente uma ferramenta de apoio à prática de algoritmos cujo objetivo é de melhor incentivar os alunos no aprendizado de algoritmos e no exercício de raciocínio lógico. Por fim, uma avaliação comparativa entre a metodologia proposta e outra, sem uso dos recursos de aprendizagem significativa, foi realizada e seus resultados analisados.

12
  • HEITOR MARIANO DE AQUINO CÂMARA
  • Uma Abordagem Sistemática para o Teste de Linhas de Produto de Software

  • Orientador : UIRA KULESZA
  • MEMBROS DA BANCA :
  • EDUARDO HENRIQUE DA SILVA ARANHA
  • ROBERTA DE SOUZA COELHO
  • SÉRGIO CASTELO BRANCO SOARES
  • UIRA KULESZA
  • Data: 01/03/2011

  • Mostrar Resumo
  • Esta dissertação de mestrado propõe uma abordagem sistemática para o
    teste de linhas de produto de software. A abordagem oferece: (i)
    diretrizes para a escolha de estratégias de teste na engenharia de
    domínio e aplicação; (ii) diretrizes para a implementação e reuso de
    casos de teste automatizado no nível de unidade, integração e
    sistemas; e (iii) suporte ferramental para gerenciar e automaticamente
    derivar casos de teste automatizado usando técnicas de derivação
    automática de software. A abordagem foi avaliada através da sua
    aplicação em uma linha de produto para sistemas web.


  • Mostrar Abstract
  • Esta dissertação de mestrado propõe uma abordagem sistemática para o
    teste de linhas de produto de software. A abordagem oferece: (i)
    diretrizes para a escolha de estratégias de teste na engenharia de
    domínio e aplicação; (ii) diretrizes para a implementação e reuso de
    casos de teste automatizado no nível de unidade, integração e
    sistemas; e (iii) suporte ferramental para gerenciar e automaticamente
    derivar casos de teste automatizado usando técnicas de derivação
    automática de software. A abordagem foi avaliada através da sua
    aplicação em uma linha de produto para sistemas web.

13
  • ÍTALO MENDES DA SILVA RIBEIRO
  • Paralelização em GPU da Segmentação Vascular com Extração de Centerlines por Height Ridges

  • Orientador : SELAN RODRIGUES DOS SANTOS
  • MEMBROS DA BANCA :
  • SELAN RODRIGUES DOS SANTOS
  • BRUNO MOTTA DE CARVALHO
  • RICARDO CORDEIRO DE FARIAS
  • Data: 02/03/2011

  • Mostrar Resumo
  • A segmentação vascular é importante no diagnóstico de doenças como o acidente vascular cerebral e é dificultada por ruídos na imagem e vasos muito finos que podem passar imperceptíveis. Uma maneira de realizar a segmentação é extraindo a Centerline do vaso com Height Ridges que usa a intensidade da imagem para a detecção das Centelines. Esse processo pode levar vários minutos, com o intuito de acelerar a segmentação, a abordagem do trabalho é feita em paralelo utilizando CUDA. A segmentação será comparada com uma segmentação feita por um profissional e com a implementação realizada em CPU.


  • Mostrar Abstract
  • A segmentação vascular é importante no diagnóstico de doenças como o acidente vascular cerebral e é dificultada por ruídos na imagem e vasos muito finos que podem passar imperceptíveis. Uma maneira de realizar a segmentação é extraindo a Centerline do vaso com Height Ridges que usa a intensidade da imagem para a detecção das Centelines. Esse processo pode levar vários minutos, com o intuito de acelerar a segmentação, a abordagem do trabalho é feita em paralelo utilizando CUDA. A segmentação será comparada com uma segmentação feita por um profissional e com a implementação realizada em CPU.

14
  • ALBA SANDYRA BEZERRA LOPES
  • Arquitetura com Elevada Taxa de Processamento e Reduzida Largura de Banda de Memória para  a Estimação de Movimento em Vídeos Digitais

  • Orientador : IVAN SARAIVA SILVA
  • MEMBROS DA BANCA :
  • IVAN SARAIVA SILVA
  • MARCIO EDUARDO KREUTZ
  • LUCIANO VOLCAN AGOSTINI
  • RICARDO PEZZUOL JACOBI
  • Data: 30/03/2011

  • Mostrar Resumo
  • Diversos aparelhos eletrônicos atuais dão suporte à utilização de vídeos digitais: celulares, câmeras fotográficas, filmadoras digitais e TVs digitais são alguns exemplos. Entretanto, esses vídeos, tal como foram capturados, apresentam uma grande quantidade de informação, utilizando milhares de bits para sua representação. Para realizar o armazenamento dos dados na sua forma primária seria necessária uma quantidade enorme de espaço e uma grande largura de banda para realizar a transmissão. A compressão de vídeos torna-se, então, essencial para possibilitar o armazenamento e a transmissão destes dados. O estimador de movimento, um dos módulos do codificador, faz uso da redundância temporal existente nas seqüências de vídeo para reduzir a quantidade de dados necessária para a representação da informação.  Este trabalho apresenta uma proposta de uma arquitetura em hardware para o estimador de movimento, segundo o padrão H.264. O padrão H.264 é o mais novo padrão de compressão de vídeo que alcançou seu objetivo ao conseguir elevadas taxas de compressão. É na estimação de movimento que residem os maiores ganhos conseguidos com o padrão. Este trabalho está inserido no projeto Rede H.264 que visa desenvolver tecnologia brasileira para o Sistema Brasileiro de Televisão Digital.


  • Mostrar Abstract
  • Diversos aparelhos eletrônicos atuais dão suporte à utilização de vídeos digitais: celulares, câmeras fotográficas, filmadoras digitais e TVs digitais são alguns exemplos. Entretanto, esses vídeos, tal como foram capturados, apresentam uma grande quantidade de informação, utilizando milhares de bits para sua representação. Para realizar o armazenamento dos dados na sua forma primária seria necessária uma quantidade enorme de espaço e uma grande largura de banda para realizar a transmissão. A compressão de vídeos torna-se, então, essencial para possibilitar o armazenamento e a transmissão destes dados. O estimador de movimento, um dos módulos do codificador, faz uso da redundância temporal existente nas seqüências de vídeo para reduzir a quantidade de dados necessária para a representação da informação.  Este trabalho apresenta uma proposta de uma arquitetura em hardware para o estimador de movimento, segundo o padrão H.264. O padrão H.264 é o mais novo padrão de compressão de vídeo que alcançou seu objetivo ao conseguir elevadas taxas de compressão. É na estimação de movimento que residem os maiores ganhos conseguidos com o padrão. Este trabalho está inserido no projeto Rede H.264 que visa desenvolver tecnologia brasileira para o Sistema Brasileiro de Televisão Digital.

15
  • DANIELLE GOMES DE FREITAS MEDEIROS
  • Um Framework de Agentes de Recomendação para Sistemas Web
  • Orientador : UIRA KULESZA
  • MEMBROS DA BANCA :
  • ADILSON BARBOZA LOPES
  • ANDRE MAURICIO CUNHA CAMPOS
  • CLÁUDIO NOGUEIRA SANT'ANNA
  • UIRA KULESZA
  • Data: 13/05/2011

  • Mostrar Resumo
  • A World Wide Web, ou simplesmente Web, se consolidou ao longo dos 
    últimos anos como uma plataforma padrão para disponibilizar sistemas de 
    software de diferentes natureza na Internet. Atualmente, uma grande 
    variedade de aplicações de interesse do usuário final está disponível 
    na plataforma Web, variando desde aplicações corporativas do domínio 
    bancário, comércio eletrônico e governamental. Novas perspectivas e 
    inovações estão em curso, através do desenvolvimento das chamadas 
    aplicações de Internet ricas (Rich Internet Applications – RIA), cujo 
    objetivo é prover interfaces mais dinâmicas e intuitivas. Dada a 
    quantidade de informação disponibilizada e de usuários usando seus 
    serviços, muitos sistemas Web têm buscado apresentar recomendações como 
    parte de suas funcionalidades, com o objetivo de permitir ao usuário um 
    melhor uso dos serviços disponíveis, baseado no perfil do usuário e no 
    seu histórico de navegação e uso do sistema. Neste contexto, este 
    trabalho de dissertação propõe o desenvolvimento de um framework de 
    agentes de usuário que ofereçam recomendações para usuários de sistemas 
    web. O trabalho envolve a concepção, projeto, implementação de um 
    framework orientado a objetos que permite o desenvolvimento de agentes 
    de usuário de recomendação para sistemas Web. Os agentes do framework 
    podem ser plugados ou desplugados de forma não invasiva em aplicações 
    Web existentes, através de uma implementação orientada a aspecto. O 
    framework é avaliado através da sua instanciação para três diferentes 
    sistemas web.

  • Mostrar Abstract
  • A World Wide Web, ou simplesmente Web, se consolidou ao longo dos 
    últimos anos como uma plataforma padrão para disponibilizar sistemas de 
    software de diferentes natureza na Internet. Atualmente, uma grande 
    variedade de aplicações de interesse do usuário final está disponível 
    na plataforma Web, variando desde aplicações corporativas do domínio 
    bancário, comércio eletrônico e governamental. Novas perspectivas e 
    inovações estão em curso, através do desenvolvimento das chamadas 
    aplicações de Internet ricas (Rich Internet Applications – RIA), cujo 
    objetivo é prover interfaces mais dinâmicas e intuitivas. Dada a 
    quantidade de informação disponibilizada e de usuários usando seus 
    serviços, muitos sistemas Web têm buscado apresentar recomendações como 
    parte de suas funcionalidades, com o objetivo de permitir ao usuário um 
    melhor uso dos serviços disponíveis, baseado no perfil do usuário e no 
    seu histórico de navegação e uso do sistema. Neste contexto, este 
    trabalho de dissertação propõe o desenvolvimento de um framework de 
    agentes de usuário que ofereçam recomendações para usuários de sistemas 
    web. O trabalho envolve a concepção, projeto, implementação de um 
    framework orientado a objetos que permite o desenvolvimento de agentes 
    de usuário de recomendação para sistemas Web. Os agentes do framework 
    podem ser plugados ou desplugados de forma não invasiva em aplicações 
    Web existentes, através de uma implementação orientada a aspecto. O 
    framework é avaliado através da sua instanciação para três diferentes 
    sistemas web.
16
  • ANA LIZ SOUTO OLIVEIRA
  • Análise de Impacto Baseada em Rastreabilidade de Artefatos para Linhas de Produto de Software

  • Orientador : PAULO DE FIGUEIREDO PIRES
  • MEMBROS DA BANCA :
  • LYRENE FERNANDES DA SILVA
  • GIBEON SOARES DE AQUINO JUNIOR
  • CLAUDIA MARIA FERNANDES ARAÚJO RIBEIRO
  • Data: 31/05/2011

  • Mostrar Resumo
  • Uma linha de produtos de software (LPS) é formada por uma família de produtos, pertencente a um determinado domínio de aplicação que compartilha funcionalidades (features) comuns (arquitetura base) e define funcionalidades específicas, as quais variam de acordo com os produtos (variabilidades). Quando há evolução de um produto é importante estimar e identificar se essas mudanças afetam outros produtos, a arquitetura base ou as variabilidades da LPS. Essa atividade de estimar mudanças é chamada de Análise de Impacto. Apesar de existirem soluções para realizar análise de impacto em software, há uma carência de análise de impacto para o contexto específico de LPS. Assim, este trabalho apresenta uma infraestrutura de análise de impacto de mudanças para LPS composta de um processo de análise de impacto baseado em rastreabilidade de artefatos e de uma ferramenta para auxiliar na estimativa e identificação dos artefatos da LPS afetados por uma mudança.


  • Mostrar Abstract
  • Uma linha de produtos de software (LPS) é formada por uma família de produtos, pertencente a um determinado domínio de aplicação que compartilha funcionalidades (features) comuns (arquitetura base) e define funcionalidades específicas, as quais variam de acordo com os produtos (variabilidades). Quando há evolução de um produto é importante estimar e identificar se essas mudanças afetam outros produtos, a arquitetura base ou as variabilidades da LPS. Essa atividade de estimar mudanças é chamada de Análise de Impacto. Apesar de existirem soluções para realizar análise de impacto em software, há uma carência de análise de impacto para o contexto específico de LPS. Assim, este trabalho apresenta uma infraestrutura de análise de impacto de mudanças para LPS composta de um processo de análise de impacto baseado em rastreabilidade de artefatos e de uma ferramenta para auxiliar na estimativa e identificação dos artefatos da LPS afetados por uma mudança.

17
  • ELIZAMA DAS CHAGAS LEMOS
  • DESENVOLVIMENTO DE CHATTERBOTS: UM ESTUDO DE CASO VOLTADO AO ENSINO DE ALGORITMOS

  • Orientador : ANDRE MAURICIO CUNHA CAMPOS
  • MEMBROS DA BANCA :
  • ANDRE MAURICIO CUNHA CAMPOS
  • BRUNO MOTTA DE CARVALHO
  • AQUILES MEDEIROS FILGUEIRA BURLAMAQUI
  • ANA LUCIA SARMENTO HENRIQUE
  • Data: 31/05/2011

  • Mostrar Resumo
  • No desenvolvimento de Agentes Sintéticos, ainda reside a dúvida sobre o que seria um comportamento que possa ser considerado, de fato, plausível para esse tipo de agente e qual forma pode ser considerada eficaz na transmissão das emoções de uma entidade autônoma. A proposta desse trabalho tem um cunho investigativo – na tentativa de descobrir quais aspectos são importantes para esse comportamento coerente – e prático, no desenvolvimento de um chatterbot com o papel de tutor virtual, inserido no contexto de ensino de algoritmos. Logo, são explanadas a pesquisa realizada com usuários, as tecnologias existentes para construção de agentes, bem como os contextos inseridos e os conceitos que o permeiam a fim de tentar compreender o grau de importância de tais requisitos em um comportamento plausível. 


  • Mostrar Abstract
  • No desenvolvimento de Agentes Sintéticos, ainda reside a dúvida sobre o que seria um comportamento que possa ser considerado, de fato, plausível para esse tipo de agente e qual forma pode ser considerada eficaz na transmissão das emoções de uma entidade autônoma. A proposta desse trabalho tem um cunho investigativo – na tentativa de descobrir quais aspectos são importantes para esse comportamento coerente – e prático, no desenvolvimento de um chatterbot com o papel de tutor virtual, inserido no contexto de ensino de algoritmos. Logo, são explanadas a pesquisa realizada com usuários, as tecnologias existentes para construção de agentes, bem como os contextos inseridos e os conceitos que o permeiam a fim de tentar compreender o grau de importância de tais requisitos em um comportamento plausível. 

18
  • SAMUEL LINCOLN MAGALHÃES BARROCAS
  • JCircus 2.0: Uma Extensão da ferramenta de tradução de Circus para Java

  • Orientador : MARCEL VINICIUS MEDEIROS OLIVEIRA
  • MEMBROS DA BANCA :
  • ADOLFO ALMEIDA DURAN
  • MARCEL VINICIUS MEDEIROS OLIVEIRA
  • MARTIN ALEJANDRO MUSICANTE
  • Data: 29/08/2011

  • Mostrar Resumo
  • Circus é uma linguagem formal cuja sintaxe é baseada nas sintaxes das linguagens Z e CSP, e que engloba um cálculo de refinamento. Circus possui um parser em Java que foi desenvolvido estendendo-se o parser de Z, pela CZT (Community Z Tools). Este parser foi utilizado para a implementação de dois aplicativos Java, chamados JCircus e CRefine. CRefine é uma ferramenta que realiza o refinamento de especificações Circus. Circus possui uma estratégia de tradução de especificações Circus para Java associada a ela. Esta estratégia de tradução foi implementada e verificada através de JCircus, que foi implementado com o uso da versão mais antiga do parser de CZT. O código Java gerado por JCircus faz uso de uma API de Java chamada JCSP, que implementa uma parte das primitivas da linguagem CSP. O fato de JCSP não implementar CSP completamente faz com que a estratégia de tradução de Circus para Java seja não-trivial. Algumas primitivas de CSP, como paralelismo, escolhas externa e interna, abstração, comunicação, e multi-sincronização são implementadas em JCSP de forma parcial, ou não são implementadas.

    Esta dissertação propõe estender a estratégia de tradução de Circus para Java, e habilitar JCircus para que ele seja integrado com CRefine. Para realizar estas tarefas, é necessário: migrar JCircus à versão mais nova do parser de CZT e prover uma estratégia de tradução para as primitivas de CSP cuja tradução para Java não é trivial. Como escopo adicional, esta dissertação também desenvolverá uma ferramenta para fazer testes de unidade com os programas gerados por JCircus, chamada JCSPUnit. Esta ferramenta fará parte da nova versão de JCircus. A versão estendida de JCircus se chamará JCircus++.


  • Mostrar Abstract
  • Circus é uma linguagem formal cuja sintaxe é baseada nas sintaxes das linguagens Z e CSP, e que engloba um cálculo de refinamento. Circus possui um parser em Java que foi desenvolvido estendendo-se o parser de Z, pela CZT (Community Z Tools). Este parser foi utilizado para a implementação de dois aplicativos Java, chamados JCircus e CRefine. CRefine é uma ferramenta que realiza o refinamento de especificações Circus. Circus possui uma estratégia de tradução de especificações Circus para Java associada a ela. Esta estratégia de tradução foi implementada e verificada através de JCircus, que foi implementado com o uso da versão mais antiga do parser de CZT. O código Java gerado por JCircus faz uso de uma API de Java chamada JCSP, que implementa uma parte das primitivas da linguagem CSP. O fato de JCSP não implementar CSP completamente faz com que a estratégia de tradução de Circus para Java seja não-trivial. Algumas primitivas de CSP, como paralelismo, escolhas externa e interna, abstração, comunicação, e multi-sincronização são implementadas em JCSP de forma parcial, ou não são implementadas.

    Esta dissertação propõe estender a estratégia de tradução de Circus para Java, e habilitar JCircus para que ele seja integrado com CRefine. Para realizar estas tarefas, é necessário: migrar JCircus à versão mais nova do parser de CZT e prover uma estratégia de tradução para as primitivas de CSP cuja tradução para Java não é trivial. Como escopo adicional, esta dissertação também desenvolverá uma ferramenta para fazer testes de unidade com os programas gerados por JCircus, chamada JCSPUnit. Esta ferramenta fará parte da nova versão de JCircus. A versão estendida de JCircus se chamará JCircus++.

19
  • DIEGO HENRIQUE OLIVEIRA DE SOUZA
  • Joker: Um Framework de Animação para Especificações Formais

  • Orientador : MARCEL VINICIUS MEDEIROS OLIVEIRA
  • MEMBROS DA BANCA :
  • ALEXANDRE CABRAL MOTA
  • JAIR CAVALCANTI LEITE
  • MARCEL VINICIUS MEDEIROS OLIVEIRA
  • Data: 31/08/2011

  • Mostrar Resumo
  • Muitas ferramentas provém suporte a métodos formais em todo o processo de desenvolvimento. No entanto, na maioria das vezes elas não são fáceis de usar e tem uma curva de aprendizagem significativa. Isso cria uma resistência em adotar a abordagem. Às vezes, apesar de ter um compilador que é capaz de gerar um sistema de transições rotuladas (LTS) a partir da especificação, a linguagem não fornece um animador. Essa ferramenta pode ser usada para melhorar a compreensão de uma especificação, pois pode ser usada para prototipar o sistema. A ferramenta que apresentamos nesta dissertação, Joker, visa animar qualquer linguagem formal usando apenas o seu LTS como entrada. Já é capaz de animar Lotos, B, CSP e Z. Nós apresentamos as funcionalidades da ferramenta e, mais importante, como ele pode ser adaptado para outras linguagens formais.


  • Mostrar Abstract
  • Muitas ferramentas provém suporte a métodos formais em todo o processo de desenvolvimento. No entanto, na maioria das vezes elas não são fáceis de usar e tem uma curva de aprendizagem significativa. Isso cria uma resistência em adotar a abordagem. Às vezes, apesar de ter um compilador que é capaz de gerar um sistema de transições rotuladas (LTS) a partir da especificação, a linguagem não fornece um animador. Essa ferramenta pode ser usada para melhorar a compreensão de uma especificação, pois pode ser usada para prototipar o sistema. A ferramenta que apresentamos nesta dissertação, Joker, visa animar qualquer linguagem formal usando apenas o seu LTS como entrada. Já é capaz de animar Lotos, B, CSP e Z. Nós apresentamos as funcionalidades da ferramenta e, mais importante, como ele pode ser adaptado para outras linguagens formais.

20
  • MARCILIO DE OLIVEIRA MEIRA
  • Avaliação de Arquiteturas de Agentes Emocionais: uma abordagem baseada em métricas de qualidade e na influência das emoções sobre usuários

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • MEMBROS DA BANCA :
  • ANDRE MAURICIO CUNHA CAMPOS
  • ANNE MAGALY DE PAULA CANUTO
  • PATRICIA CABRAL DE AZEVEDO RESTELLI TEDESCO
  • Data: 05/09/2011

  • Mostrar Resumo
  • Há uma necessidade dos projetistas de sistemas multiagentes em determinar sua qualidade logo nas fases iniciais do processo de desenvolvimento. E como as arquiteturas de agentes também fazem parte do projeto desses sistemas, é preciso que as arquiteturas de agentes com emoções também tenham sua qualidade e potencial de uso avaliados. Assim buscamos neste estudo avaliar cinco das principais arquiteturas de agentes emocionais: BDIE, Camurri-Coglio, DETT, EBDI, Emotional-BDI, analisando aspectos da qualidade do projeto arquitetural, em cima de três atributos de qualidade: extensibilidade, modularidade e complexidade. Além disso, pela reconhecida importância do papel que as emoções exercem entre as pessoas, e pela falta de estudos que investiguem o potencial dos agentes emocionais na interação humano-computador, também avaliamos o impacto da interação das pessoas com agentes implementados a partir das arquiteturas em estudo, analisando seu desempenho e sua experiência subjetiva num jogo de computador com agentes emocionais. Dos resultados obtidos, destacou-se a arquitetura DETT com o melhor projeto arquitetural, mas não houve predominância de uma única arquitetura na avaliação da experiência subjetiva dos usuários, nem encontramos evidências de que os agentes emocionais das arquiteturas melhoram o desempenho dos usuários no jogo. Contudo, os usuários que jogaram a versão do jogo com agentes tiveram melhor desempenho do que os que jogaram sem interagirem com os agentes.


  • Mostrar Abstract
  • Há uma necessidade dos projetistas de sistemas multiagentes em determinar sua qualidade logo nas fases iniciais do processo de desenvolvimento. E como as arquiteturas de agentes também fazem parte do projeto desses sistemas, é preciso que as arquiteturas de agentes com emoções também tenham sua qualidade e potencial de uso avaliados. Assim buscamos neste estudo avaliar cinco das principais arquiteturas de agentes emocionais: BDIE, Camurri-Coglio, DETT, EBDI, Emotional-BDI, analisando aspectos da qualidade do projeto arquitetural, em cima de três atributos de qualidade: extensibilidade, modularidade e complexidade. Além disso, pela reconhecida importância do papel que as emoções exercem entre as pessoas, e pela falta de estudos que investiguem o potencial dos agentes emocionais na interação humano-computador, também avaliamos o impacto da interação das pessoas com agentes implementados a partir das arquiteturas em estudo, analisando seu desempenho e sua experiência subjetiva num jogo de computador com agentes emocionais. Dos resultados obtidos, destacou-se a arquitetura DETT com o melhor projeto arquitetural, mas não houve predominância de uma única arquitetura na avaliação da experiência subjetiva dos usuários, nem encontramos evidências de que os agentes emocionais das arquiteturas melhoram o desempenho dos usuários no jogo. Contudo, os usuários que jogaram a versão do jogo com agentes tiveram melhor desempenho do que os que jogaram sem interagirem com os agentes.

21
  • MADIEL DE SOUSA CONSERVA FILHO
  • Estendendo CRefine para o Suporte de Táticas de Refinamento

  • Orientador : MARCEL VINICIUS MEDEIROS OLIVEIRA
  • MEMBROS DA BANCA :
  • ANAMARIA MARTINS MOREIRA
  • AUGUSTO CEZAR ALVES SAMPAIO
  • MARCEL VINICIUS MEDEIROS OLIVEIRA
  • Data: 07/10/2011

  • Mostrar Resumo
  • Devido à necessidade da utilização de aplicações de software cada vez mais complexas, existe uma grande preocupação no que diz respeito em garantir uma melhor qualidade no processo de desenvolvimento de software. Assim, tanto profissionais quanto pesquisadores estão utilizando novas técnicas em conjunto com as já existentes na área de Engenharia de Software para tornar o desenvolvimento dos sistemas cada vez mais correto. Uma dessas abordagens são os Métodos formais, que utilizam linguagens formais que têm sua base fundamentada na matemática, apresentando uma semântica e  sintaxe bem definidas. Uma destas linguagens é Circus, a qual possibilita a modelagem de sistemas concorrentes. Ela foi desenvolvida com a união dos conceitos de outras duas linguagens de especificação, Z, que especifica a modelagem de dados complexos, com CSP, para a modelagem de sistemas concorrentes. Circus também possibilita realizar o processo de cálculo de refinamentos de programas, na qual leis de refinamento são aplicadas à uma especificação formal. A ferramenta CRefine foi desenvolvida para realizar o suporte a este cálculo de refinamentos de  programas em Circus.

    Cada etapa é justificada pela aplicação de uma lei de refinamento  (possivelmente com o prova de certas condições chamadas de obrigações de prova). Às vezes, as mesmas leis podem ser aplicadas da mesma forma em diferentes desdobramentos ou mesmo em partes diferentes de um único desenvolvimento. Uma estratégia para otimizar esse cálculo é formalizar estas aplicações como táticas de refinamento, que podem ser usadas como uma regra única de transformação. 

    Antes desta dissertação, CRefine não fornecia suporte para as táticas de refinamento. Este trabalho apresenta um novo módulo no CRefine, que automatiza o processo de definição e aplicação de táticas de refinamento que são formalizadas na linguagem tática ArcAngelC. Além  disso, validamos a extensão aplicando o novo módulo em um estudo de caso, que consiste em uma estratégia de refinamento para verificação de implementações SPARK Ada de sistemas de controle.


  • Mostrar Abstract
  • Devido à necessidade da utilização de aplicações de software cada vez mais complexas, existe uma grande preocupação no que diz respeito em garantir uma melhor qualidade no processo de desenvolvimento de software. Assim, tanto profissionais quanto pesquisadores estão utilizando novas técnicas em conjunto com as já existentes na área de Engenharia de Software para tornar o desenvolvimento dos sistemas cada vez mais correto. Uma dessas abordagens são os Métodos formais, que utilizam linguagens formais que têm sua base fundamentada na matemática, apresentando uma semântica e  sintaxe bem definidas. Uma destas linguagens é Circus, a qual possibilita a modelagem de sistemas concorrentes. Ela foi desenvolvida com a união dos conceitos de outras duas linguagens de especificação, Z, que especifica a modelagem de dados complexos, com CSP, para a modelagem de sistemas concorrentes. Circus também possibilita realizar o processo de cálculo de refinamentos de programas, na qual leis de refinamento são aplicadas à uma especificação formal. A ferramenta CRefine foi desenvolvida para realizar o suporte a este cálculo de refinamentos de  programas em Circus.

    Cada etapa é justificada pela aplicação de uma lei de refinamento  (possivelmente com o prova de certas condições chamadas de obrigações de prova). Às vezes, as mesmas leis podem ser aplicadas da mesma forma em diferentes desdobramentos ou mesmo em partes diferentes de um único desenvolvimento. Uma estratégia para otimizar esse cálculo é formalizar estas aplicações como táticas de refinamento, que podem ser usadas como uma regra única de transformação. 

    Antes desta dissertação, CRefine não fornecia suporte para as táticas de refinamento. Este trabalho apresenta um novo módulo no CRefine, que automatiza o processo de definição e aplicação de táticas de refinamento que são formalizadas na linguagem tática ArcAngelC. Além  disso, validamos a extensão aplicando o novo módulo em um estudo de caso, que consiste em uma estratégia de refinamento para verificação de implementações SPARK Ada de sistemas de controle.

Teses
1
  • FREDERICO ARAUJO DA SILVA LOPES
  • Uma Plataforma de Integração de Middleware para Computação Ubíqua

  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • THAIS VASCONCELOS BATISTA
  • FLAVIA COIMBRA DELICATO
  • MARKUS ENDLER
  • PAULO DE FIGUEIREDO PIRES
  • PAULO FERREIRA
  • Data: 18/11/2011

  • Mostrar Resumo
  • O desenvolvimento de aplicações ubíquas conta com o suporte de plataformas de middleware para computação ubíqua para obter serviços e informações contextuais relevantes para as aplicações. Cada middleware adota um modelo de representação de dados de contexto e APIs específicas para acesso aos dados e serviços. Tipicamente aplicações ubíquas precisam interagir com diferentes middleware para acessar uma gama de informações contextuais. De forma a facilitar o desenvolvimento de aplicações nesse cenário heterogêneo, este trabalho propõe o OpenCOPI (Open COntext Platform Integration), uma plataforma baseada em serviços Web que integra diferentes middleware para computação ubíqua, provendo um serviço de contexto unificado e um mecanismo de composição semântica onde aplicações são clientes de serviços e plataformas de middleware de contexto são provedores de serviços. Para prover independência de plataforma e simplificar a integração com diferentes middleware, o OpenCOPI é baseado em tecnologias SOA e Web Semântica.


  • Mostrar Abstract
  • O desenvolvimento de aplicações ubíquas conta com o suporte de plataformas de middleware para computação ubíqua para obter serviços e informações contextuais relevantes para as aplicações. Cada middleware adota um modelo de representação de dados de contexto e APIs específicas para acesso aos dados e serviços. Tipicamente aplicações ubíquas precisam interagir com diferentes middleware para acessar uma gama de informações contextuais. De forma a facilitar o desenvolvimento de aplicações nesse cenário heterogêneo, este trabalho propõe o OpenCOPI (Open COntext Platform Integration), uma plataforma baseada em serviços Web que integra diferentes middleware para computação ubíqua, provendo um serviço de contexto unificado e um mecanismo de composição semântica onde aplicações são clientes de serviços e plataformas de middleware de contexto são provedores de serviços. Para prover independência de plataforma e simplificar a integração com diferentes middleware, o OpenCOPI é baseado em tecnologias SOA e Web Semântica.

2
  • PAULO HENRIQUE ASCONAVIETA DA SILVA
  • O Problema do Caixeiro Alugador: Um Estudo Algorítmico

  • Orientador : MARCO CESAR GOLDBARG
  • MEMBROS DA BANCA :
  • MARCO CESAR GOLDBARG
  • ANNE MAGALY DE PAULA CANUTO
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • REGIVAN HUGO NUNES SANTIAGO
  • HENRIQUE PACCA LOUREIRO LUNA
  • MYRIAM REGATTIERI DE BIASE DA SILVA DELGADO
  • Data: 19/12/2011

  • Mostrar Resumo
  • O Problema do Caixeiro Viajante com Aluguel de Carros – o Caixeiro Alugador (PCA) é uma variante ainda não descrita na literatura do clássico Problema do Caixeiro Viajante onde seu tour de visitas pode ser decomposto em caminhos contíguos e que podem ser realizados em diferentes carros alugados. O problema consiste em determinar o ciclo hamiltoniano que resulte em um custo final mínimo, considerado o custo da rota adicionado ao custo de uma provável penalização paga em cada troca de veículos na rota, penalização devida ao retorno do carro descartado até a sua base. O presente trabalho descreve o problema geral e o exemplifica, caracterizando igualmente algumas variantes associadas. Uma formulação matemática é sugerida para um dos casos descritos. Uma análise geral da complexidade desse problema combinatório também é esboçada, visando justificar sua classificação na classe NP-difícil. Um banco de instâncias para o problema é sugerido, descrevendo-se a metodologia de sua constituição. O problema proposto também é objeto de um estudo algorítmico experimental baseado na aplicação de três metaheurísticas de solução. Com base nessas metáforas, são desenvolvidos três algoritmos associados e apresentados resultados computacionais do teste desses protótipos sobre uma amostra de 40 diferentes instâncias do banco criado. Tendo em vista o experimento, a presente proposta propõe duas linhas de melhoria para os algoritmos desenvolvidos ao longo de um cronograma que cobre dezoito meses de pesquisa. Ao final as conclusões da pesquisa são firmadas de forma a sustentar sua viabilidade tanto em tempo quanto no que diz respeito ao mérito.


  • Mostrar Abstract
  • O Problema do Caixeiro Viajante com Aluguel de Carros – o Caixeiro Alugador (PCA) é uma variante ainda não descrita na literatura do clássico Problema do Caixeiro Viajante onde seu tour de visitas pode ser decomposto em caminhos contíguos e que podem ser realizados em diferentes carros alugados. O problema consiste em determinar o ciclo hamiltoniano que resulte em um custo final mínimo, considerado o custo da rota adicionado ao custo de uma provável penalização paga em cada troca de veículos na rota, penalização devida ao retorno do carro descartado até a sua base. O presente trabalho descreve o problema geral e o exemplifica, caracterizando igualmente algumas variantes associadas. Uma formulação matemática é sugerida para um dos casos descritos. Uma análise geral da complexidade desse problema combinatório também é esboçada, visando justificar sua classificação na classe NP-difícil. Um banco de instâncias para o problema é sugerido, descrevendo-se a metodologia de sua constituição. O problema proposto também é objeto de um estudo algorítmico experimental baseado na aplicação de três metaheurísticas de solução. Com base nessas metáforas, são desenvolvidos três algoritmos associados e apresentados resultados computacionais do teste desses protótipos sobre uma amostra de 40 diferentes instâncias do banco criado. Tendo em vista o experimento, a presente proposta propõe duas linhas de melhoria para os algoritmos desenvolvidos ao longo de um cronograma que cobre dezoito meses de pesquisa. Ao final as conclusões da pesquisa são firmadas de forma a sustentar sua viabilidade tanto em tempo quanto no que diz respeito ao mérito.

2010
Dissertações
1
  • CASSIO HIGINO DE FREITAS
  • Sistema Especialista Fuzzy para Projeto de Bombeio Mecânico

  • Orientador : JAIR CAVALCANTI LEITE
  • MEMBROS DA BANCA :
  • BENNO WALDEMAR ASSMANN
  • FLAVIA MARIA SANTORO
  • JAIR CAVALCANTI LEITE
  • THAIS VASCONCELOS BATISTA
  • Data: 22/02/2010

  • Mostrar Resumo
  • Ainda que outras técnicas de produção petrolífera tenham sido desenvolvidas, os sistemas de bombeio mecânico ainda são hegemônicos nos campos terrestres devido ao seu baixo custo de produção e manutenção. Mesmo após tantos anos de uso extensivo, a elaboração de um projeto de bombeio adequado ainda depende da aquisição de anos de experiência por parte do engenheiro projetista, e a falta de know-how pode levar o projetista a um desgastante processo de tentativa e erro para se chegar a uma configuração de bombeio adequado. Ainda, nem sempre se chega a tal configuração, o que pode ocasionar na quebra de equipamento e conseqüentemente no prejuízo com interrupção da produção e troca do equipamento defeituoso. Este trabalho propõe a modelagem de um sistema especialista no dimensionamento de sistemas de bombeio mecânico. Ele irá gerar configurações de bombeio que serão classificadas de acordo com critérios baseados nos dados de entrada sobre equipamentos e configurações de uso e nos cálculos dos parâmetros operacionais obtidos na saída do procedimento. As regras de inferência seriam elaboradas a partir do conhecimento obtido junto a especialistas e modeladas com o auxílio da lógica fuzzy, que permite representar computacionalmente as nuances e imprecisões inerentes _a estrutura de raciocínio humano. A especificação do sistema deverá posteriormente ser validada junto a especialistas para verificar as contribuições deste trabalho em situações reais de utilização do sistema.


  • Mostrar Abstract
  • Ainda que outras técnicas de produção petrolífera tenham sido desenvolvidas, os sistemas de bombeio mecânico ainda são hegemônicos nos campos terrestres devido ao seu baixo custo de produção e manutenção. Mesmo após tantos anos de uso extensivo, a elaboração de um projeto de bombeio adequado ainda depende da aquisição de anos de experiência por parte do engenheiro projetista, e a falta de know-how pode levar o projetista a um desgastante processo de tentativa e erro para se chegar a uma configuração de bombeio adequado. Ainda, nem sempre se chega a tal configuração, o que pode ocasionar na quebra de equipamento e conseqüentemente no prejuízo com interrupção da produção e troca do equipamento defeituoso. Este trabalho propõe a modelagem de um sistema especialista no dimensionamento de sistemas de bombeio mecânico. Ele irá gerar configurações de bombeio que serão classificadas de acordo com critérios baseados nos dados de entrada sobre equipamentos e configurações de uso e nos cálculos dos parâmetros operacionais obtidos na saída do procedimento. As regras de inferência seriam elaboradas a partir do conhecimento obtido junto a especialistas e modeladas com o auxílio da lógica fuzzy, que permite representar computacionalmente as nuances e imprecisões inerentes _a estrutura de raciocínio humano. A especificação do sistema deverá posteriormente ser validada junto a especialistas para verificar as contribuições deste trabalho em situações reais de utilização do sistema.

2
  • ISAAC DE LIMA OLIVEIRA FILHO
  • Criptoanálise diferencial do Papílio

  • Orientador : BENJAMIN RENE CALLEJAS BEDREGAL
  • MEMBROS DA BANCA :
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • IVAN SARAIVA SILVA
  • JOÃO DE DEUS LIMA
  • KARLA DARLENE NEPOMUCENO RAMOS
  • RUY JOSÉ GUERRA BARRETTO DE QUEIROZ
  • Data: 26/02/2010

  • Mostrar Resumo
  • Este trabalho aborda a aplicação da técnica de Criptoanálise Diferencial sobre o algoritmo de criptografia de chave simétrica Papílio, desenvolvido por Karla Darlene, por fim de testar e acima de tudo, provar sua relevância em relação a outras cifras de blocos como DES, BlowFish e FEAL-N(X). Esta técnica tem por base a análise das diferenças entres os pares de textos claros e a diferença entre as suas respectivas cifras, em buscas de padrões que auxiliarão nas descobertas das subchaves e conseqüentemente na descoberta da chave mestra, na qual está a segurança da cifra. Estas diferenças são obtidas através de operações XOR. Busca-se através desta análise, além de obtenção de padrões do Papílio, obter também as principais características e o comportamento do Papílio durante todo os 16 ciclos de seu processo de cifragem, identificando e substituindo quando necessários os fatores que podem ser melhoradas de acordo com as definições pré subestabelecidas do mesmo, para oferecer assim uma maior segurança na utilização de sua cifra.


  • Mostrar Abstract
  • Este trabalho aborda a aplicação da técnica de Criptoanálise Diferencial sobre o algoritmo de criptografia de chave simétrica Papílio, desenvolvido por Karla Darlene, por fim de testar e acima de tudo, provar sua relevância em relação a outras cifras de blocos como DES, BlowFish e FEAL-N(X). Esta técnica tem por base a análise das diferenças entres os pares de textos claros e a diferença entre as suas respectivas cifras, em buscas de padrões que auxiliarão nas descobertas das subchaves e conseqüentemente na descoberta da chave mestra, na qual está a segurança da cifra. Estas diferenças são obtidas através de operações XOR. Busca-se através desta análise, além de obtenção de padrões do Papílio, obter também as principais características e o comportamento do Papílio durante todo os 16 ciclos de seu processo de cifragem, identificando e substituindo quando necessários os fatores que podem ser melhoradas de acordo com as definições pré subestabelecidas do mesmo, para oferecer assim uma maior segurança na utilização de sua cifra.

3
  • CLEVERTON HENTZ ANTUNES
  • Geração Automática de Testes a partir de Descrições de Linguagens
  • Orientador : ANAMARIA MARTINS MOREIRA
  • MEMBROS DA BANCA :
  • ANAMARIA MARTINS MOREIRA
  • ROBERTA DE SOUZA COELHO
  • ROBERTO IERUSALIMSCHY
  • Data: 01/03/2010

  • Mostrar Resumo
  • Apresentamos neste trabalho uma abordagem alternativa na construção de geradores de sentenças para serem utilizadas no teste de programas que tem sua entrada formalmente definida através de gramáticas, com compiladores. A abordagem proposta se baseia na utilização da linguagem Lua, se apoiando fortemente em seus recursos de co-rotinas e construção dinâmica de funções. Com estes recursos, propomos uma implementação compacta e simples de um gerador básico de sentenças, que pode ser otimizado e controlado de maneiras diversas, de maneira a buscar a satisfação de diferentes critérios de cobertura.

  • Mostrar Abstract
  • Apresentamos neste trabalho uma abordagem alternativa na construção de geradores de sentenças para serem utilizadas no teste de programas que tem sua entrada formalmente definida através de gramáticas, com compiladores. A abordagem proposta se baseia na utilização da linguagem Lua, se apoiando fortemente em seus recursos de co-rotinas e construção dinâmica de funções. Com estes recursos, propomos uma implementação compacta e simples de um gerador básico de sentenças, que pode ser otimizado e controlado de maneiras diversas, de maneira a buscar a satisfação de diferentes critérios de cobertura.
4
  • THATIANA CUNHA NAVARRO DE SOUZA
  • Algoritmo Evolucionário para a Distribuição de Produtos de Petróleo por Redes de Polidutos

  • Orientador : ELIZABETH FERREIRA GOUVEA GOLDBARG
  • MEMBROS DA BANCA :
  • ELIZABETH FERREIRA GOUVEA GOLDBARG
  • ILONEIDE CARLOS DE OLIVEIRA RAMOS
  • LUCIANA SALETE BURIOL
  • MARCO CESAR GOLDBARG
  • Data: 02/03/2010

  • Mostrar Resumo
  • A distribuição de produtos de petróleo através de redes de polidutos é um importante problema que se coloca no planejamento de produção das refinarias. Consiste em determinar o que será feito em cada estágio de produção dado um determinado horizonte de tempo, no que respeita à distribuição de produtos de nós fonte à procura de nós, passando por nós intermediários. Restrições relativas à limites de armazenamento, tempo de entrega, disponibilidade de fontes, limites de envio ou recebimento, entre outros, têm de ser satisfeitas. Este problema pode ser visto como um problema biobjetivo, que visa minimizar o tempo de envio e o envio sucessivo de produtos diferentes no mesmo duto que é chamado de fragmentação. Neste trabalho, são desenvolvidos dois algoritmos que são aplicados a este problema: o primeiro algoritmo é discreto e baseia-se na Otimização por Nuvem de Partículas (PSO), com procedimentos de busca local e path-relinking propostos como operadores de velocidade, aplicados ao Problema de Distribuição de Produtos de Petróleo (PDPP), o segundo algoritmo trata-se de um Non-dominated Sorting Genetic Algorithm II (NSGA-II). Os resultados obtidos com as abordagens propostas são comparados com os resultados obtidos por dois Algoritmos Genéticos previamente propostos para o problema. Tendo em vista os experimentos computacionais, a presente proposta propõe uma linha de melhoria para os algoritmos desenvolvidos, como também, a realização de testes estatísticos ao longo de um cronograma que cobre aproximadamente dois meses de pesquisa.


  • Mostrar Abstract
  • A distribuição de produtos de petróleo através de redes de polidutos é um importante problema que se coloca no planejamento de produção das refinarias. Consiste em determinar o que será feito em cada estágio de produção dado um determinado horizonte de tempo, no que respeita à distribuição de produtos de nós fonte à procura de nós, passando por nós intermediários. Restrições relativas à limites de armazenamento, tempo de entrega, disponibilidade de fontes, limites de envio ou recebimento, entre outros, têm de ser satisfeitas. Este problema pode ser visto como um problema biobjetivo, que visa minimizar o tempo de envio e o envio sucessivo de produtos diferentes no mesmo duto que é chamado de fragmentação. Neste trabalho, são desenvolvidos dois algoritmos que são aplicados a este problema: o primeiro algoritmo é discreto e baseia-se na Otimização por Nuvem de Partículas (PSO), com procedimentos de busca local e path-relinking propostos como operadores de velocidade, aplicados ao Problema de Distribuição de Produtos de Petróleo (PDPP), o segundo algoritmo trata-se de um Non-dominated Sorting Genetic Algorithm II (NSGA-II). Os resultados obtidos com as abordagens propostas são comparados com os resultados obtidos por dois Algoritmos Genéticos previamente propostos para o problema. Tendo em vista os experimentos computacionais, a presente proposta propõe uma linha de melhoria para os algoritmos desenvolvidos, como também, a realização de testes estatísticos ao longo de um cronograma que cobre aproximadamente dois meses de pesquisa.

5
  • EVERTON TAVARES GUIMARÃES
  • Uma Estratégia Genérica para Geração de Código Orientado a Aspectos

  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • CHRISTINA VON FLACH GARCIA CHAVEZ
  • NELIO ALESSANDRO AZEVEDO CACHO
  • THAIS VASCONCELOS BATISTA
  • UIRA KULESZA
  • Data: 04/03/2010

  • Mostrar Resumo
  • Atualmente existem diversas abordagens orientadas a aspectos que estão relacionadas às diferentes fases do processo de desenvolvimento de software. No entanto existe uma independência entre tais abordagens, de forma de que seus modelos e artefatos não estejam alinhados e inseridos em um processo coerente. A integração entre o desenvolvimento de software orientado a aspectos (DSOA) e o desenvolvimento dirigido a modelos (MDD) permite propagação automática entre modelos de uma fase para outra, evitando perda de informações e decisões importantes estabelecidas em cada uma delas, Este trabalho apresenta MARISA-AOCode, uma estratégia baseada em MDD que suporta a transformação de projeto detalhado para diferentes linguagens de Programação Orientada a Aspectos. MARISA-AOCode define regras de transformação entre aSideML, uma linguagem de modelagem para projeto detalhado orientado a aspectos, e Metaspin, um metamodelo genérico para linguagens de programação orientadas a aspectos. A instanciação do modelo genérico provido por MARISA-AOCode, o modelo Metaspin, é ilustrada através da transformação do Metaspin para a linguagem AspectLua. Para validar a abordagem foi proposto um estudo de caso baseado no sistema Health Watcher, visto ser um sistema clássico utilizado por pesquisadores para validar e demonstrar suas abordagens orientadas a aspectos. 

     


  • Mostrar Abstract
  • Atualmente existem diversas abordagens orientadas a aspectos que estão relacionadas às diferentes fases do processo de desenvolvimento de software. No entanto existe uma independência entre tais abordagens, de forma de que seus modelos e artefatos não estejam alinhados e inseridos em um processo coerente. A integração entre o desenvolvimento de software orientado a aspectos (DSOA) e o desenvolvimento dirigido a modelos (MDD) permite propagação automática entre modelos de uma fase para outra, evitando perda de informações e decisões importantes estabelecidas em cada uma delas, Este trabalho apresenta MARISA-AOCode, uma estratégia baseada em MDD que suporta a transformação de projeto detalhado para diferentes linguagens de Programação Orientada a Aspectos. MARISA-AOCode define regras de transformação entre aSideML, uma linguagem de modelagem para projeto detalhado orientado a aspectos, e Metaspin, um metamodelo genérico para linguagens de programação orientadas a aspectos. A instanciação do modelo genérico provido por MARISA-AOCode, o modelo Metaspin, é ilustrada através da transformação do Metaspin para a linguagem AspectLua. Para validar a abordagem foi proposto um estudo de caso baseado no sistema Health Watcher, visto ser um sistema clássico utilizado por pesquisadores para validar e demonstrar suas abordagens orientadas a aspectos. 

     

6
  • ANDRE GUSTAVO PEREIRA DA SILVA
  • Uma Abordagem Dirigida por Modelos para Desenvolvimento de Middlewares Auto-Adaptativos para Transmissão de Fluxo de Dados Baseado em Restrições de QoS

  • Orientador : ADILSON BARBOZA LOPES
  • MEMBROS DA BANCA :
  • ADILSON BARBOZA LOPES
  • GLEDSON ELIAS DA SILVEIRA
  • UIRA KULESZA
  • Data: 15/03/2010

  • Mostrar Resumo
  • A utilização da tecnologia de middleware em diversos tipos de sistemas, com a finalidade de abstrair detalhes de baixo nível relacionados com a distribuição da lógica da aplicação, é cada vez mais frequente. Dentre diversos sistemas que podem ser beneficiados com a utilização desses componentes, podemos destacar os sistemas distribuídos, onde é necessário viabilizar a comunicação entre componentes de software localizados em diferentes máquinas físicas. Uma importante questão relacionada à comunicação entre componentes distribuídos é o fornecimento de mecanismos para gerenciamento da qualidade de serviço. Este trabalho apresenta uma abordagem de middleware baseado em componentes que provê à aplicação a abstração da comunicação entre componentes envolvidos em um fluxo de dados, independente da sua localização. Outra característica do middleware é a possibilidade de auto-adaptação relacionada ao mecanismo de comunicação utilizado, seja através da atualização dos valores dos seus parâmetros de configuração, ou através da sua substituição por outro mecanismo, caso as restrições de qualidade de serviço especificadas não estejam sendo garantidas.  Nesse propósito, é feito o monitoramento do estado da comunicação (aplicações de técnicas do tipo feedback control loop), analisando-se métricas de desempenho relacionadas com jitter, perda de pacotes, etc. O paradigma de Desenvolvimento Dirigido por Modelos está sendo utilizado para gerar a implementação do middleware e as novas configurações relacionadas com o processos de adaptação dinâmica; neste sentido, estamos definido o metamodelo da arquitetura do middleware e descrevendo o modelo associado ao processo de configuração. A aplicação da técnica de MDD corresponde ainda à definição das seguintes transformações: do modelo arquitetural do middleware para código em linguagem Java, e do modelo de configuração para código XML Schema.


  • Mostrar Abstract
  • A utilização da tecnologia de middleware em diversos tipos de sistemas, com a finalidade de abstrair detalhes de baixo nível relacionados com a distribuição da lógica da aplicação, é cada vez mais frequente. Dentre diversos sistemas que podem ser beneficiados com a utilização desses componentes, podemos destacar os sistemas distribuídos, onde é necessário viabilizar a comunicação entre componentes de software localizados em diferentes máquinas físicas. Uma importante questão relacionada à comunicação entre componentes distribuídos é o fornecimento de mecanismos para gerenciamento da qualidade de serviço. Este trabalho apresenta uma abordagem de middleware baseado em componentes que provê à aplicação a abstração da comunicação entre componentes envolvidos em um fluxo de dados, independente da sua localização. Outra característica do middleware é a possibilidade de auto-adaptação relacionada ao mecanismo de comunicação utilizado, seja através da atualização dos valores dos seus parâmetros de configuração, ou através da sua substituição por outro mecanismo, caso as restrições de qualidade de serviço especificadas não estejam sendo garantidas.  Nesse propósito, é feito o monitoramento do estado da comunicação (aplicações de técnicas do tipo feedback control loop), analisando-se métricas de desempenho relacionadas com jitter, perda de pacotes, etc. O paradigma de Desenvolvimento Dirigido por Modelos está sendo utilizado para gerar a implementação do middleware e as novas configurações relacionadas com o processos de adaptação dinâmica; neste sentido, estamos definido o metamodelo da arquitetura do middleware e descrevendo o modelo associado ao processo de configuração. A aplicação da técnica de MDD corresponde ainda à definição das seguintes transformações: do modelo arquitetural do middleware para código em linguagem Java, e do modelo de configuração para código XML Schema.

7
  • KAIO ALENCAR DE AZEVEDO DANTAS
  • MOBILE INTERACT: Uma Ferramenta de Gerenciamento de Conexões entre Celulares e Servidores Utilizados para Interação em Ambientes Interativos de Educação à Distância

  • Orientador : IVAN SARAIVA SILVA
  • MEMBROS DA BANCA :
  • ADILSON BARBOZA LOPES
  • AQUILES MEDEIROS FILGUEIRA BURLAMAQUI
  • IVAN SARAIVA SILVA
  • TATIANA AIRES TAVARES
  • Data: 10/05/2010

  • Mostrar Resumo
  • O trabalho apresenta uma ferramenta de software utilizada para prover interatividade por meio de celulares em ambientes educacionais juntamente com o gerenciamento de múltiplas conexões neste contexto e como o sistema deve se comportar mediante inúmeros usuários. A arquitetura da ferramenta é mostrada a fundo, trazendo as características no uso de tecnologias de comunicação sem fio e dando ênfase em conexões Bluetooth, que possui um número máximo de conexões simultâneas. São mostrados os resultados obtidos com o uso da arquitetura em um ambiente real seguido pela análise dos mesmos e uma conclusão sobre o trabalho desenvolvido.

     

     


  • Mostrar Abstract
  • O trabalho apresenta uma ferramenta de software utilizada para prover interatividade por meio de celulares em ambientes educacionais juntamente com o gerenciamento de múltiplas conexões neste contexto e como o sistema deve se comportar mediante inúmeros usuários. A arquitetura da ferramenta é mostrada a fundo, trazendo as características no uso de tecnologias de comunicação sem fio e dando ênfase em conexões Bluetooth, que possui um número máximo de conexões simultâneas. São mostrados os resultados obtidos com o uso da arquitetura em um ambiente real seguido pela análise dos mesmos e uma conclusão sobre o trabalho desenvolvido.

     

     

8
  • GIOVANI ANGELO SILVA DA NOBREGA
  • Integrais de Linha Intervalares: Fundamentos e  Aplicações

  • Orientador : BENJAMIN RENE CALLEJAS BEDREGAL
  • MEMBROS DA BANCA :
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • REGIVAN HUGO NUNES SANTIAGO
  • RAMON ORESTES MENDOZA AHUMADA
  • ROBERTO CALLEJAS BEDREGAL
  • Data: 28/05/2010

  • Mostrar Resumo
  • A necessidade de uma precisão e de uma aproximação dos resultados numéricos  fizeram com que diversas teorias surgissem: dentre elas, destacamos a matemática  intervalar. A matemática intervalar surgiu na década de 60 com os trabalhos de  pesquisa de Moore, em que ele propos trabalhar com uma matemática baseada na noção de intervalo real e não mais com um número pontual. Com isso, surgiu a  necessidade de revisitar e reformular os conceitos e resultados da matemática  clássica utilizando como base a noção de intervalo de Moore. Uma das áreas da  matemática clássica que tem tido muitas aplicações em engenharias e ciencias é a  análises numérica, onde um dos seus pilares é o cálculo diferencial integral e  em particular as integrais de linha. Assim, é muito desejável se ter um cálculo  diferencial e integral dentro da própria matemática intervalar. Porém não  encontramos na literatura nenhum trabalho que tenha uma tal teoria razoável, ou  seja com uma noção de integral e derivada para funções intervalares  que satisfaçam um resultado análogo ao teorema fundamental do cálculo.  No presente trabalho apresenta-se uma noção de integral de linha intervalar  baseada na extensão de integração proposta por Bedregal-Bedregal. Para a  fundamentação apresenta-se incialmente uma introdução sobre a pespectiva  em que o trabalho foi realizado, considerando alguns aspectos  histórico-evolutivos da matemática clássica. Os conceitos de integrais de linha  clássica, bem como algumas das suas aplicações mais importantes. Alguns  conceitos de matemática intervalar necessários para o entendimento do trabalho.  Uma formalização do Teorema Fundamental do Cálculo para funções intervalares,  bem como uma proposta para o Teorema Fundamental do Cálculo para Caminhos  Intervalares e a formalização da Integral de Linha Intervalar bem como o seu teorema de caracterização. Para analisar propomos uma aplicação da integral de  linha em um experimênto clássico da mecânica quântica (a difração de um elétron  em uma fenda) que graças ao fato de ser a matemática intervalar utilizada, nos  dá um foco mais detalhado e mais próximo da realidade.


  • Mostrar Abstract
  • A necessidade de uma precisão e de uma aproximação dos resultados numéricos  fizeram com que diversas teorias surgissem: dentre elas, destacamos a matemática  intervalar. A matemática intervalar surgiu na década de 60 com os trabalhos de  pesquisa de Moore, em que ele propos trabalhar com uma matemática baseada na noção de intervalo real e não mais com um número pontual. Com isso, surgiu a  necessidade de revisitar e reformular os conceitos e resultados da matemática  clássica utilizando como base a noção de intervalo de Moore. Uma das áreas da  matemática clássica que tem tido muitas aplicações em engenharias e ciencias é a  análises numérica, onde um dos seus pilares é o cálculo diferencial integral e  em particular as integrais de linha. Assim, é muito desejável se ter um cálculo  diferencial e integral dentro da própria matemática intervalar. Porém não  encontramos na literatura nenhum trabalho que tenha uma tal teoria razoável, ou  seja com uma noção de integral e derivada para funções intervalares  que satisfaçam um resultado análogo ao teorema fundamental do cálculo.  No presente trabalho apresenta-se uma noção de integral de linha intervalar  baseada na extensão de integração proposta por Bedregal-Bedregal. Para a  fundamentação apresenta-se incialmente uma introdução sobre a pespectiva  em que o trabalho foi realizado, considerando alguns aspectos  histórico-evolutivos da matemática clássica. Os conceitos de integrais de linha  clássica, bem como algumas das suas aplicações mais importantes. Alguns  conceitos de matemática intervalar necessários para o entendimento do trabalho.  Uma formalização do Teorema Fundamental do Cálculo para funções intervalares,  bem como uma proposta para o Teorema Fundamental do Cálculo para Caminhos  Intervalares e a formalização da Integral de Linha Intervalar bem como o seu teorema de caracterização. Para analisar propomos uma aplicação da integral de  linha em um experimênto clássico da mecânica quântica (a difração de um elétron  em uma fenda) que graças ao fato de ser a matemática intervalar utilizada, nos  dá um foco mais detalhado e mais próximo da realidade.

9
  • EBERTON DA SILVA MARINHO
  • Um Modelo Conceitual Baseado Em MDD e Padrões para Evolução de Sistemas OA

  • Orientador : FLAVIA COIMBRA DELICATO
  • MEMBROS DA BANCA :
  • FLAVIA COIMBRA DELICATO
  • PAULO DE FIGUEIREDO PIRES
  • THAIS VASCONCELOS BATISTA
  • ALESSANDRO GARCIA
  • Data: 02/08/2010

  • Mostrar Resumo
  • O Desenvolvimento de Software Orientado a Aspectos (DSOA) é uma técnica que complementa o Desenvolvimento de Software Orientado a Objetos (DSOO) modularizando conceitos que as abordagens para suporte ao DSOO não conseguiam modularizar adequadamente. No entanto, o estado da arte atual do DSOA sofre com a evolução de software, principalmente porque as definições de aspectos podem deixar de funcionar corretamente quando elementos do modelo base evoluem. Uma abordagem promissora para tratar este problema é a definição de pointcuts baseados em modelos (model based-pointcuts), onde pointcuts são definidos em termos de elementos de um modelo conceitual que são menos susceptíveis a evolução que elementos do modelo base. Com base nessa estratégia, este trabalho define um modelo conceitual em um alto nível de abstração onde se pode definir padrões e arquiteturas que através de técnicas de Desenvolvimento Dirigido a Modelos (Model Driven Development -MDD) podem ser instanciados e compostos em linguagens de descrição arquitetural que suportem a modelagem de aspectos a nível de arquitetura. A abordagem MDD empregada permite ainda a propagação de tais conceitos para outros níveis de abstrações como o de projeto com o uso de regras de transformação.

     


  • Mostrar Abstract
  • O Desenvolvimento de Software Orientado a Aspectos (DSOA) é uma técnica que complementa o Desenvolvimento de Software Orientado a Objetos (DSOO) modularizando conceitos que as abordagens para suporte ao DSOO não conseguiam modularizar adequadamente. No entanto, o estado da arte atual do DSOA sofre com a evolução de software, principalmente porque as definições de aspectos podem deixar de funcionar corretamente quando elementos do modelo base evoluem. Uma abordagem promissora para tratar este problema é a definição de pointcuts baseados em modelos (model based-pointcuts), onde pointcuts são definidos em termos de elementos de um modelo conceitual que são menos susceptíveis a evolução que elementos do modelo base. Com base nessa estratégia, este trabalho define um modelo conceitual em um alto nível de abstração onde se pode definir padrões e arquiteturas que através de técnicas de Desenvolvimento Dirigido a Modelos (Model Driven Development -MDD) podem ser instanciados e compostos em linguagens de descrição arquitetural que suportem a modelagem de aspectos a nível de arquitetura. A abordagem MDD empregada permite ainda a propagação de tais conceitos para outros níveis de abstrações como o de projeto com o uso de regras de transformação.

     

10
  • JOSE DE ANCHIETA GOMES DOS SANTOS
  • Arquitetura Hardware/Software de um núcleo NCAP Segundo o Padrão IEEE 1451.1: Uma Prova de Conceito

  • Orientador : IVAN SARAIVA SILVA
  • MEMBROS DA BANCA :
  • IVAN SARAIVA SILVA
  • MARCIO EDUARDO KREUTZ
  • CLAUDIA MARIA FERNANDES ARAÚJO RIBEIRO
  • KARLA DARLENE NEPOMUCENO RAMOS
  • Data: 06/08/2010

  • Mostrar Resumo
  • Os sensores inteligentes são dispositivos que se diferenciam dos sensores comuns por apresentar capacidade de processamento sobre os dados monitorados. Eles tipicamente são compostos por uma fonte de alimentação, transdutores (sensores e atuadores), memória, processador e transceptor. De acordo com o padrão IEEE 1451 um sensor inteligente pode ser dividido em módulos TIM e NCAP que devem se comunicar através de uma interface padronizada chamada TII. O módulo NCAP é a parte do sensor inteligente que comporta o processador. Portanto, ele é o responsável por atribuir a característica de inteligência ao sensor. Existem várias abordagens que podem ser utilizadas para o desenvolvimento desse módulo, dentre elas se destacam aquelas que utilizam microcontroladores de baixo custo e/ou FPGA. Este trabalho aborda o desenvolvimento de uma arquitetura hardware/software para um módulo NCAP segundo o padrão IEEE 1451.1. A infra-estrutura de hardware é composta por um driver de interface RS-232, uma memória RAM de 512kB, uma interface TII, o processador embarcado NIOS II e um simulador do módulo TIM. Para integração dos componentes de hardware é utilizada ferramenta de integração automática SOPC Builder. A infra-estrutura de software é composta pelo padrão IEEE 1451.1 e pela aplicação específica do NCAP que atua como um sistema de refrigeração que ao perceber alguma variação no sensor de temperatura deve realizar uma variação no atuador para manter a temperatura ambiente estável. O módulo proposto é embarcado em uma FPGA e para a sua prototipação é usada a placa DE2 da Altera que contém a FPGA Cyclone II EP2C35F672C6. O processador embarcado NIOS II é utilizado para dar suporte à infra-estrutura de software do NCAP que é desenvolvido na linguagem C e se baseia no padrão IEEE 1451.1. A infra-estrutura de hardware do NCAP e todos os módulos que a compõem, possuem a descrição de seu comportamento feita através da linguagem VHDL.


  • Mostrar Abstract
  • Os sensores inteligentes são dispositivos que se diferenciam dos sensores comuns por apresentar capacidade de processamento sobre os dados monitorados. Eles tipicamente são compostos por uma fonte de alimentação, transdutores (sensores e atuadores), memória, processador e transceptor. De acordo com o padrão IEEE 1451 um sensor inteligente pode ser dividido em módulos TIM e NCAP que devem se comunicar através de uma interface padronizada chamada TII. O módulo NCAP é a parte do sensor inteligente que comporta o processador. Portanto, ele é o responsável por atribuir a característica de inteligência ao sensor. Existem várias abordagens que podem ser utilizadas para o desenvolvimento desse módulo, dentre elas se destacam aquelas que utilizam microcontroladores de baixo custo e/ou FPGA. Este trabalho aborda o desenvolvimento de uma arquitetura hardware/software para um módulo NCAP segundo o padrão IEEE 1451.1. A infra-estrutura de hardware é composta por um driver de interface RS-232, uma memória RAM de 512kB, uma interface TII, o processador embarcado NIOS II e um simulador do módulo TIM. Para integração dos componentes de hardware é utilizada ferramenta de integração automática SOPC Builder. A infra-estrutura de software é composta pelo padrão IEEE 1451.1 e pela aplicação específica do NCAP que atua como um sistema de refrigeração que ao perceber alguma variação no sensor de temperatura deve realizar uma variação no atuador para manter a temperatura ambiente estável. O módulo proposto é embarcado em uma FPGA e para a sua prototipação é usada a placa DE2 da Altera que contém a FPGA Cyclone II EP2C35F672C6. O processador embarcado NIOS II é utilizado para dar suporte à infra-estrutura de software do NCAP que é desenvolvido na linguagem C e se baseia no padrão IEEE 1451.1. A infra-estrutura de hardware do NCAP e todos os módulos que a compõem, possuem a descrição de seu comportamento feita através da linguagem VHDL.

11
  • TADEU FERREIRA OLIVEIRA
  • Sistema Operacional e Biblioteca de Funções para Plataformas MPSOC: Um Estudo 
    de Caso para Simuladores de Reservatório
  • Orientador : IVAN SARAIVA SILVA
  • MEMBROS DA BANCA :
  • IVAN SARAIVA SILVA
  • MARCIO EDUARDO KREUTZ
  • RICARDO PEZZUOL JACOBI
  • Data: 09/08/2010

  • Mostrar Resumo
  • O aumento da demanda por poder de processamento nos últimos anos forçou a indústria de circuitos integrados a buscar formas de prover maior poder de processamento com menor dissipação de calor, menor consumo de potência e área em chip. Para isso a principal estratégia era o aumento do clock dos circuitos e o aumento no número de componentes por área, porém com a proximidade dos limites físicos dessa abordagem surgem, como solução alternativa, as arquiteturas com múltiplos processadores em um único chip os MPSoC (Multi-Processor System on a Chip).  Essa abordagem exige mudanças na camada de software além de que novas ferramentas e novos softwares sejam desenvolvidos, buscando aproveitar ao máximo o aspecto paralelo destas arquiteturas. Um sistema operacional oferece uma abstração das peculiaridades do hardware, além de buscar otimizar a alocação dos recursos entre os processos em execução. Este trabalho apresenta a implementação de um micro-kernel de sistema operacional de tempo real e bibliotecas auxiliares para a plataforma MPSoC STORM.

    Para a avaliação desta abordagem utilizou-se a simulação de reservatórios como aplicação de testes e validação. A indústria de exploração de petróleo tem como uma de suas atividades iniciais a decisão de projetos de exploração de campos de petróleo, essas decisões são tomadas baseando-se em simulações computacionalmente intensivas, situação em que os MPSoCs podem oferecer aumento de performance através de paralelismo.


  • Mostrar Abstract
  • O aumento da demanda por poder de processamento nos últimos anos forçou a indústria de circuitos integrados a buscar formas de prover maior poder de processamento com menor dissipação de calor, menor consumo de potência e área em chip. Para isso a principal estratégia era o aumento do clock dos circuitos e o aumento no número de componentes por área, porém com a proximidade dos limites físicos dessa abordagem surgem, como solução alternativa, as arquiteturas com múltiplos processadores em um único chip os MPSoC (Multi-Processor System on a Chip).  Essa abordagem exige mudanças na camada de software além de que novas ferramentas e novos softwares sejam desenvolvidos, buscando aproveitar ao máximo o aspecto paralelo destas arquiteturas. Um sistema operacional oferece uma abstração das peculiaridades do hardware, além de buscar otimizar a alocação dos recursos entre os processos em execução. Este trabalho apresenta a implementação de um micro-kernel de sistema operacional de tempo real e bibliotecas auxiliares para a plataforma MPSoC STORM.

    Para a avaliação desta abordagem utilizou-se a simulação de reservatórios como aplicação de testes e validação. A indústria de exploração de petróleo tem como uma de suas atividades iniciais a decisão de projetos de exploração de campos de petróleo, essas decisões são tomadas baseando-se em simulações computacionalmente intensivas, situação em que os MPSoCs podem oferecer aumento de performance através de paralelismo.

12
  • STEPHENSON DE SOUSA LIMA GALVAO
  • Modelagem Formal do Sistema Operacional de Tempo Real FreeRTOS Utilizando o Método B

  • Orientador : DAVID BORIS PAUL DEHARBE
  • MEMBROS DA BANCA :
  • DAVID BORIS PAUL DEHARBE
  • MARCEL VINICIUS MEDEIROS OLIVEIRA
  • ALINE MAIRA SANTOS ANDRADE
  • Data: 16/08/2010

  • Mostrar Resumo
  • Este trabalho apresenta uma contribuição para o esforço internacional do Verified Software Repository, o qual tem como alguns de seus objetivos acelerar o desenvolvimento das tecnologias de verificação de software e colecionar especificações de diversas aplicações como smart card, bibliotecas padrões de desenvolvimento e sistema operacionais embarcados. Para essa contribuição, será adotada a sugestão do pesquisador britânico Woodcock de especificar formalmente o sistema operacional de tempo real FreeRTOS, o qual tem como características a sua simplicidade, portabilidade e popularidade. Com essa especificação será possível verificar o correto funcionamento desse sistema e, conseqüentemente, garantir uma maior confiabilidade para as aplicações desenvolvidas através dele, cooperando, com isso, também para o desafio da
    construção de sistemas disponíveis, seguros, escalonáveis e ubíquos, proposto pela Sociedade Brasileira de Computação. O formalismo que será utilizado nessa especificação é o método B, que, devido as suas semelhanças com as linguagens de programação imperativas e suas técnicas de modularização e refinamento, tornou-se viável para a construção dessa especificação.
    O modelo desenvolvido terá como principal foco as funcionalidades e abstrações de hardware do sistema e o seu desenvolvimento será feito de forma incremental. Para provar a viabilidade desse trabalho, uma especificação abstrata foi inicialmente desenvolvida, na qual algumas propriedades do sistema puderam ser tratadas. Ao final, pretende-se com a especificação do FreeRTOS, além de validar os requisitos desse sistema, criar uma documentação formal do mesmo, a qual poderá ser usada como entrada para a geração de testes, no nível de código, para o sistema especificado. Em suma, a especificação do FreeRTOS auxiliará na resolução dos desafios anteriormente citados, servindo desse modo como uma contribuição para a sociedade de computação, em especial a sociedade de métodos formais.


  • Mostrar Abstract
  • Este trabalho apresenta uma contribuição para o esforço internacional do Verified Software Repository, o qual tem como alguns de seus objetivos acelerar o desenvolvimento das tecnologias de verificação de software e colecionar especificações de diversas aplicações como smart card, bibliotecas padrões de desenvolvimento e sistema operacionais embarcados. Para essa contribuição, será adotada a sugestão do pesquisador britânico Woodcock de especificar formalmente o sistema operacional de tempo real FreeRTOS, o qual tem como características a sua simplicidade, portabilidade e popularidade. Com essa especificação será possível verificar o correto funcionamento desse sistema e, conseqüentemente, garantir uma maior confiabilidade para as aplicações desenvolvidas através dele, cooperando, com isso, também para o desafio da
    construção de sistemas disponíveis, seguros, escalonáveis e ubíquos, proposto pela Sociedade Brasileira de Computação. O formalismo que será utilizado nessa especificação é o método B, que, devido as suas semelhanças com as linguagens de programação imperativas e suas técnicas de modularização e refinamento, tornou-se viável para a construção dessa especificação.
    O modelo desenvolvido terá como principal foco as funcionalidades e abstrações de hardware do sistema e o seu desenvolvimento será feito de forma incremental. Para provar a viabilidade desse trabalho, uma especificação abstrata foi inicialmente desenvolvida, na qual algumas propriedades do sistema puderam ser tratadas. Ao final, pretende-se com a especificação do FreeRTOS, além de validar os requisitos desse sistema, criar uma documentação formal do mesmo, a qual poderá ser usada como entrada para a geração de testes, no nível de código, para o sistema especificado. Em suma, a especificação do FreeRTOS auxiliará na resolução dos desafios anteriormente citados, servindo desse modo como uma contribuição para a sociedade de computação, em especial a sociedade de métodos formais.

13
  • LIGIA MARIA MOURA E SILVA
  • Selecao de atributos em comites de classificadores: Uma abordagem usando algoritmos geneticos

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • MEMBROS DA BANCA :
  • ANNE MAGALY DE PAULA CANUTO
  • BRUNO MOTTA DE CARVALHO
  • RICARDO BASTOS CAVALCANTE PRUDÊNCIO
  • Data: 14/10/2010

  • Mostrar Resumo
  • Comitês de classificadores são sistemas compostos por um conjunto de classificadores individuais e um módulo de combinação, o qual é responsável por fornecer a saída final do sistema. No entanto, para que esses sistemas apresentem melhor desempenho que um classificador simples, é necessário que os componentes individuais não cometam erros nos mesmos padrões. Portanto, a diversidade tem sido considerada um dos aspectos mais importantes, já que não há vantagem na combinação de métodos de classificação idênticos. Uma forma de aumentar diversidade é através da construção de classificadores individuais a partir de diferentes conjuntos de treinamento (padrões e/ou atributos). Nesse contexto, uma maneira de selecionar subconjuntos de atributos para os classificadores individuais é através da utilização de métodos de seleção de atributos. No entanto, na maioria das pesquisas, os métodos de seleção de atributos são aplicados em comitês de classificadores homogêneos, ou seja, comitês compostos pelo mesmo tipo de classificador. Por esse motivo, o objetivo deste trabalho é analisar o comportamento desses métodos na geração de comitês de classificadores diversos, tanto homogêneos como heterogêneos. Para guiar a distribuição dos atributos, entre os classificadores base, serão utilizadas duas abordagens de algoritmos genéticos (monoobjetivo e multi-objetivo), usando diferentes funções de aptidão. Para tanto, os experimentos serão divididos em três fases, onde as duas primeiras usam uma abordagem filtro de seleção de atributos, e a última utiliza uma abordagem híbrida (junção de filtro e wrapper), para explorar as vantagens de cada abordagem.


  • Mostrar Abstract
  • Comitês de classificadores são sistemas compostos por um conjunto de classificadores individuais e um módulo de combinação, o qual é responsável por fornecer a saída final do sistema. No entanto, para que esses sistemas apresentem melhor desempenho que um classificador simples, é necessário que os componentes individuais não cometam erros nos mesmos padrões. Portanto, a diversidade tem sido considerada um dos aspectos mais importantes, já que não há vantagem na combinação de métodos de classificação idênticos. Uma forma de aumentar diversidade é através da construção de classificadores individuais a partir de diferentes conjuntos de treinamento (padrões e/ou atributos). Nesse contexto, uma maneira de selecionar subconjuntos de atributos para os classificadores individuais é através da utilização de métodos de seleção de atributos. No entanto, na maioria das pesquisas, os métodos de seleção de atributos são aplicados em comitês de classificadores homogêneos, ou seja, comitês compostos pelo mesmo tipo de classificador. Por esse motivo, o objetivo deste trabalho é analisar o comportamento desses métodos na geração de comitês de classificadores diversos, tanto homogêneos como heterogêneos. Para guiar a distribuição dos atributos, entre os classificadores base, serão utilizadas duas abordagens de algoritmos genéticos (monoobjetivo e multi-objetivo), usando diferentes funções de aptidão. Para tanto, os experimentos serão divididos em três fases, onde as duas primeiras usam uma abordagem filtro de seleção de atributos, e a última utiliza uma abordagem híbrida (junção de filtro e wrapper), para explorar as vantagens de cada abordagem.

14
  • MATHEUS ALVES DE SOUSA
  • “BMMobile: Uma Linha de Produtos de Software para Dimensionamento de Bombeio Mecânico em Dispositivos Móveis

  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • FLAVIA MARIA SANTORO
  • JAIR CAVALCANTI LEITE
  • NELIO ALESSANDRO AZEVEDO CACHO
  • THAIS VASCONCELOS BATISTA
  • Data: 18/11/2010

  • Mostrar Resumo
  • Com o aumento da capacidade de processamento, armazenamento e diversos
    tipos de comunicação existentes, como Bluetooth, infravermelho, redes
    sem fio, etc., os dispositivos móveis deixaram de ser apenas
    dispositivos com função de comunicação e passaram a ser ferramentas
    com diversos tipos de funcionalidade. No campo empresarial os
    benefícios que estes tipos de dispositivos oferecem são consideráveis,
    uma vez que a portabilidade permite que tarefas que antes só poderiam
    ser executadas dentro do ambiente de trabalho, possam ser realizadas
    em qualquer lugar. Dessa forma, atividades que necessitam ser
    executadas em um ambiente externo ao local de trabalho possam ser
    realizadas de forma mais rápida. No contexto de empresas de exploração
    de petróleo aplicações móveis permitem que ações rápidas possam ser
    tomadas por engenheiros e técnicos de petróleo, usando seus
    dispositivos moveis, de forma a evitar possíveis catástrofes como a
    parada de um poço ou quebra de um equipamento importante. Em geral, a
    configuração de equipamentos para extração de petróleo é realizada no
    ambiente de trabalho utilizando sistemas computacionais em plataformas
    desktop. Após a configuração ser determinada, algum funcionário deve
    ir ao equipamento a ser configurado e executará as modificações
    obtidas na utilização do sistema desktop. Este processo de
    gerenciamento de equipamentos para a extração de petróleo demanda
    muito tempo e não garante a manutenção em tempo hábil de evitar
    maiores problemas. Com a utilização de dispositivos móveis, o
    gerenciamento e manutenção de equipamentos para extração de petróleo
    pode ser realizada de forma mais ágil, uma vez que permite que o
    engenheiro ou técnico de petróleo possa realizar essa configuração no
    momento e local onde chega a solicitação, por exemplo, próxima ao poço
    onde está localizado o equipamento. A grande variedade de tipos de
    dispositivos móveis proporciona uma grande dificuldade no
    desenvolvimento de aplicações móveis, uma vez que para que uma
    aplicação possa funcionar em diversos tipos de dispositivos, a
    aplicação deve sofrer alterações para cada tipo especifico de
    aparelho, o que torna o desenvolvimento bastante custoso. Este
    trabalho tem como objetivo definir e implementar uma linha de produto
    de software para dimensionamento de bombeio mecânico em dispositivos
    móveis. Esta linha de produto de software, denominada BMMobile, tem
    como objetivo gerar produtos que sejam capazes de realizar cálculos
    para determinar as configurações possíveis para os equipamentos no
    dimensionamento de bombeio mecânico, além de gerenciar as
    variabilidades dos diversos produtos que podem ser gerados. As
    variabilidades dessa LPS são: as formas de carregamento dos cálculos
    em um dispositivo, os tipos de transmissão de dados suportados por um
    dispositivo, a capacidade de armazenar resultados dos cálculos, as
    resoluções gráficas de resolução, suporte a gráficos e presença de cor
    de um dispositivo, e os perfis do usuário que determinam a partir da
    função do usuário em uma empresa quais os cálculos que irão compor um
    determinado produto.


  • Mostrar Abstract
  • Com o aumento da capacidade de processamento, armazenamento e diversos
    tipos de comunicação existentes, como Bluetooth, infravermelho, redes
    sem fio, etc., os dispositivos móveis deixaram de ser apenas
    dispositivos com função de comunicação e passaram a ser ferramentas
    com diversos tipos de funcionalidade. No campo empresarial os
    benefícios que estes tipos de dispositivos oferecem são consideráveis,
    uma vez que a portabilidade permite que tarefas que antes só poderiam
    ser executadas dentro do ambiente de trabalho, possam ser realizadas
    em qualquer lugar. Dessa forma, atividades que necessitam ser
    executadas em um ambiente externo ao local de trabalho possam ser
    realizadas de forma mais rápida. No contexto de empresas de exploração
    de petróleo aplicações móveis permitem que ações rápidas possam ser
    tomadas por engenheiros e técnicos de petróleo, usando seus
    dispositivos moveis, de forma a evitar possíveis catástrofes como a
    parada de um poço ou quebra de um equipamento importante. Em geral, a
    configuração de equipamentos para extração de petróleo é realizada no
    ambiente de trabalho utilizando sistemas computacionais em plataformas
    desktop. Após a configuração ser determinada, algum funcionário deve
    ir ao equipamento a ser configurado e executará as modificações
    obtidas na utilização do sistema desktop. Este processo de
    gerenciamento de equipamentos para a extração de petróleo demanda
    muito tempo e não garante a manutenção em tempo hábil de evitar
    maiores problemas. Com a utilização de dispositivos móveis, o
    gerenciamento e manutenção de equipamentos para extração de petróleo
    pode ser realizada de forma mais ágil, uma vez que permite que o
    engenheiro ou técnico de petróleo possa realizar essa configuração no
    momento e local onde chega a solicitação, por exemplo, próxima ao poço
    onde está localizado o equipamento. A grande variedade de tipos de
    dispositivos móveis proporciona uma grande dificuldade no
    desenvolvimento de aplicações móveis, uma vez que para que uma
    aplicação possa funcionar em diversos tipos de dispositivos, a
    aplicação deve sofrer alterações para cada tipo especifico de
    aparelho, o que torna o desenvolvimento bastante custoso. Este
    trabalho tem como objetivo definir e implementar uma linha de produto
    de software para dimensionamento de bombeio mecânico em dispositivos
    móveis. Esta linha de produto de software, denominada BMMobile, tem
    como objetivo gerar produtos que sejam capazes de realizar cálculos
    para determinar as configurações possíveis para os equipamentos no
    dimensionamento de bombeio mecânico, além de gerenciar as
    variabilidades dos diversos produtos que podem ser gerados. As
    variabilidades dessa LPS são: as formas de carregamento dos cálculos
    em um dispositivo, os tipos de transmissão de dados suportados por um
    dispositivo, a capacidade de armazenar resultados dos cálculos, as
    resoluções gráficas de resolução, suporte a gráficos e presença de cor
    de um dispositivo, e os perfis do usuário que determinam a partir da
    função do usuário em uma empresa quais os cálculos que irão compor um
    determinado produto.

15
  • LUCAS SILVA PEREIRA
  • GingaForAll: Linha de Produtos do Middleware Ginga

  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • THAIS VASCONCELOS BATISTA
  • UIRA KULESZA
  • PAULO HENRIQUE MONTEIRO BORBA
  • Data: 16/12/2010

  • Mostrar Resumo
  • Vários desafios têm sido impostos a middleware para suporte a aplicações de TV digital devido a heterogeneidade e restrições de recursos das plataformas de execução. Nesse cenário, o middleware deve ser altamente configurável de forma a poder ser customizado para atender aos requisitos das aplicações e das plataformas subjacentes. Esse trabalho tem como objetivo apresentar o GingaForAll, uma linha de produtos de software desenvolvida para o Ginga – o middleware do Sistema Brasileiro de TV Digital (SBTVD).  GingaForAll agrega os conceitos de linha de produtos de software, orientação a aspectos e desenvolvimento dirigido a modelos de forma a permitir: (i) a especificação das características comuns e variáveis do middleware; (ii) a modularização dos conceitos transversais – tanto conceitos obrigatórios quanto variáveis – através de aspectos; (iii) a expressão de conceitos como um conjunto de modelos que aumentam o nível de abstração e permite o gerenciamento de diferentes artefatos de software em termos de modelos configuráveis. Esse trabalho apresenta a arquitetura da linha de produtos de software e uma ferramenta que implementa tal arquitetura e que oferece suporte para customizações automáticas do middleware. O trabalho também apresenta uma ferramenta que implementa o processo de geração de produtos GingaForAll.


  • Mostrar Abstract
  • Vários desafios têm sido impostos a middleware para suporte a aplicações de TV digital devido a heterogeneidade e restrições de recursos das plataformas de execução. Nesse cenário, o middleware deve ser altamente configurável de forma a poder ser customizado para atender aos requisitos das aplicações e das plataformas subjacentes. Esse trabalho tem como objetivo apresentar o GingaForAll, uma linha de produtos de software desenvolvida para o Ginga – o middleware do Sistema Brasileiro de TV Digital (SBTVD).  GingaForAll agrega os conceitos de linha de produtos de software, orientação a aspectos e desenvolvimento dirigido a modelos de forma a permitir: (i) a especificação das características comuns e variáveis do middleware; (ii) a modularização dos conceitos transversais – tanto conceitos obrigatórios quanto variáveis – através de aspectos; (iii) a expressão de conceitos como um conjunto de modelos que aumentam o nível de abstração e permite o gerenciamento de diferentes artefatos de software em termos de modelos configuráveis. Esse trabalho apresenta a arquitetura da linha de produtos de software e uma ferramenta que implementa tal arquitetura e que oferece suporte para customizações automáticas do middleware. O trabalho também apresenta uma ferramenta que implementa o processo de geração de produtos GingaForAll.

2009
Dissertações
1
  • TASSIA APARECIDA VIEIRA DE FREITAS
  • Métricas para Avaliação de Sistemas de Middleware Orientado a Aspectos e Aplicação em um Sistema de Monitoramento de Poços de Petróleo
  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • RENATO FONTOURA DE GUSMÃO CERQUEIRA
  • THAIS VASCONCELOS BATISTA
  • UIRA KULESZA
  • Data: 20/02/2009

  • Mostrar Resumo
  • Atualmente, há diversas implementações de sistemas de middleware orientado a aspectos que aproveitam o suporte a modularização do paradigma de orientação a aspectos. Apesar dos trabalhos sempre apresentarem uma avaliação do middleware de acordo com algum atributo de qualidade, não há ainda um conjunto de métricas especificamente definidas para avaliá-los de forma abrangente, seguindo vários atributos de qualidade. Esse trabalho tem como objetivo propor um conjunto de métricas para avaliação de sistemas de middleware orientado a aspectos em diferentes fases de desenvolvimento: design, refatoração, implementação e execução. O trabalho apresenta as métricas e como elas são aplicadas em cada uma das fases de desenvolvimento. O conjunto é composto por métricas associadas a propriedades estáticas (modularidade, manutenibilidade, reusabilidade, exibilidade, complexidade, estabilidade e tamanho) e dinâmicas (desempenho e consumo de memória). Tais métricas são baseadas em abordagens existentes de avaliação de sistemas orientados a aspectos a objetos. As métricas propostas são utilizadas no contexto do OiL (Orb in Lua), um middleware baseado em CORBA e implementado em Lua, e AO-OiL, uma refatoração do OIL que segue uma arquitetura de referëncia para middlewares orientados a aspectos. O estudo de caso executado nesses middlewares é o sistema de monitoramento de poços de petróleo. Esse trabalho apresenta ainda a ferramenta CoMeTA-Lua para utomatizar coleta das métricas de tamanho e acoplamento em código-fonte Lua.

  • Mostrar Abstract
  • Atualmente, há diversas implementações de sistemas de middleware orientado a aspectos que aproveitam o suporte a modularização do paradigma de orientação a aspectos. Apesar dos trabalhos sempre apresentarem uma avaliação do middleware de acordo com algum atributo de qualidade, não há ainda um conjunto de métricas especificamente definidas para avaliá-los de forma abrangente, seguindo vários atributos de qualidade. Esse trabalho tem como objetivo propor um conjunto de métricas para avaliação de sistemas de middleware orientado a aspectos em diferentes fases de desenvolvimento: design, refatoração, implementação e execução. O trabalho apresenta as métricas e como elas são aplicadas em cada uma das fases de desenvolvimento. O conjunto é composto por métricas associadas a propriedades estáticas (modularidade, manutenibilidade, reusabilidade, exibilidade, complexidade, estabilidade e tamanho) e dinâmicas (desempenho e consumo de memória). Tais métricas são baseadas em abordagens existentes de avaliação de sistemas orientados a aspectos a objetos. As métricas propostas são utilizadas no contexto do OiL (Orb in Lua), um middleware baseado em CORBA e implementado em Lua, e AO-OiL, uma refatoração do OIL que segue uma arquitetura de referëncia para middlewares orientados a aspectos. O estudo de caso executado nesses middlewares é o sistema de monitoramento de poços de petróleo. Esse trabalho apresenta ainda a ferramenta CoMeTA-Lua para utomatizar coleta das métricas de tamanho e acoplamento em código-fonte Lua.
2
  • JOSÉ DIEGO SARAIVA DA SILVA
  • AO-OIL: UM MIDDLEWARE ORIENTADO A ASPECTOS BASEADOEM UMA ARQUITETURA DE REFERENCIA
  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • FLAVIA COIMBRA DELICATO
  • PAULO DE FIGUEIREDO PIRES
  • RENATO FONTOURA DE GUSMÃO CERQUEIRA
  • THAIS VASCONCELOS BATISTA
  • Data: 26/02/2009

  • Mostrar Resumo
  • As plataformas de middlewares têm sido amplamente utilizadas como infra-estrutura subjacente para o desenvolvimento de sistemas distribuídos. Elas fornecem transparência de localização e de heterogeneidade e um conjunto de serviços que facilitam a construção de aplicações distribuídas. Atualmente, os middlewares acomodam uma variedade crescente de requisitos a fim de atender aos mais variados domínios de aplicação. Essa ampla variedade de requisitos provocou um aumento na complexidade dos middleware, devido a introdução de vários conceitos transversais na arquitetura. Tais conceitos não são modularizados adequadamente pelas técnicas de programação tradicionais, resultando em um espalhamento e entrelaçamento desses conceitos no código do middleware. A presença de conceitos transversais limitam a escalabilidade do middleware. O paradigma orientado a aspectos tem sido utilizado com sucesso para melhorar a extensibilidade, a modularidade e a capacidade de personalização das plataformas de middleware através da seperação dos conceitos transversais do código base da aplicação. Este trabalho apresenta o AO-OiL, uma arquitetura de um middleware orientado a aspectos (OA) dinamicamente adaptável, baseado na arquitetura de referência para middlewares OA. O AO-OIL consiste em uma refatoração orientada a aspectos do middleware OIL (Orb in Lua) para separação de conceitos básicos e conceitos transversais e segue a filosofia de que as funcionalidades do middleware devem ser ditadas pelos requisitos da aplicação. A arquitetura proposta foi implementada em Lua e RE-AspectLua. Para avaliar o impacto da refatoração na arquitetura, esse trabalho apresenta uma análise comparativa de desempenho entre o AO-OiL e o OiL.

  • Mostrar Abstract
  • As plataformas de middlewares têm sido amplamente utilizadas como infra-estrutura subjacente para o desenvolvimento de sistemas distribuídos. Elas fornecem transparência de localização e de heterogeneidade e um conjunto de serviços que facilitam a construção de aplicações distribuídas. Atualmente, os middlewares acomodam uma variedade crescente de requisitos a fim de atender aos mais variados domínios de aplicação. Essa ampla variedade de requisitos provocou um aumento na complexidade dos middleware, devido a introdução de vários conceitos transversais na arquitetura. Tais conceitos não são modularizados adequadamente pelas técnicas de programação tradicionais, resultando em um espalhamento e entrelaçamento desses conceitos no código do middleware. A presença de conceitos transversais limitam a escalabilidade do middleware. O paradigma orientado a aspectos tem sido utilizado com sucesso para melhorar a extensibilidade, a modularidade e a capacidade de personalização das plataformas de middleware através da seperação dos conceitos transversais do código base da aplicação. Este trabalho apresenta o AO-OiL, uma arquitetura de um middleware orientado a aspectos (OA) dinamicamente adaptável, baseado na arquitetura de referência para middlewares OA. O AO-OIL consiste em uma refatoração orientada a aspectos do middleware OIL (Orb in Lua) para separação de conceitos básicos e conceitos transversais e segue a filosofia de que as funcionalidades do middleware devem ser ditadas pelos requisitos da aplicação. A arquitetura proposta foi implementada em Lua e RE-AspectLua. Para avaliar o impacto da refatoração na arquitetura, esse trabalho apresenta uma análise comparativa de desempenho entre o AO-OiL e o OiL.
3
  • IVANILSON FRANCA VIEIRA JUNIOR
  • Uma abordagem na camada de middleware para troca dinâmica de componentes em sistemas multimídia distribuídos baseados no framework Cosmos
  • Orientador : ADILSON BARBOZA LOPES
  • MEMBROS DA BANCA :
  • ADILSON BARBOZA LOPES
  • MARIA DA GRAÇA CAMPOS PIMENTEL
  • THAIS VASCONCELOS BATISTA
  • UIRA KULESZA
  • Data: 20/03/2009

  • Mostrar Resumo
  • Para tratar a complexidade associada ao gerenciamento dos sistemas multimídia distribuídos, uma solução deve incorporar conceitos de middleware de forma a abstrair especificidades de hardware e sistemas operacionais. Aplicações nestes sistemas podem ser executadas em diferentes tipos de plataformas, e os componentes destes sistemas precisam interagir uns com os outros. Devido à variabilidade dos estados das plataformas de execução, uma abordagem flexível deve permitir a troca dinâmicas de componentes visando garantir o nível de QoS da aplicação em execução. Neste contexto, o presente trabalho apresenta uma abordagem na camada de middleware para a realização de troca dinâmica de componentes no contexto do Cosmos, iniciando com a escolha do componente alvo para a troca, passando pela tomada de decisão de qual, entre os componentes candidatos será escolhido e concluindo com o processo definido para a troca. A abordagem foi definida com base nos requisitos de QoS considerados no framework Cosmos de maneira a suportar a reconfiguração dinâmica de componentes.

  • Mostrar Abstract
  • Para tratar a complexidade associada ao gerenciamento dos sistemas multimídia distribuídos, uma solução deve incorporar conceitos de middleware de forma a abstrair especificidades de hardware e sistemas operacionais. Aplicações nestes sistemas podem ser executadas em diferentes tipos de plataformas, e os componentes destes sistemas precisam interagir uns com os outros. Devido à variabilidade dos estados das plataformas de execução, uma abordagem flexível deve permitir a troca dinâmicas de componentes visando garantir o nível de QoS da aplicação em execução. Neste contexto, o presente trabalho apresenta uma abordagem na camada de middleware para a realização de troca dinâmica de componentes no contexto do Cosmos, iniciando com a escolha do componente alvo para a troca, passando pela tomada de decisão de qual, entre os componentes candidatos será escolhido e concluindo com o processo definido para a troca. A abordagem foi definida com base nos requisitos de QoS considerados no framework Cosmos de maneira a suportar a reconfiguração dinâmica de componentes.
4
  • BRUNO CRUZ DE OLIVEIRA
  • Simulação de Reservatórios de Petróleo em Ambiente MP-SoC
  • Orientador : IVAN SARAIVA SILVA
  • MEMBROS DA BANCA :
  • ALTAMIRO AMADEU SUSIN
  • DAVID BORIS PAUL DEHARBE
  • IVAN SARAIVA SILVA
  • MARCIO EDUARDO KREUTZ
  • Data: 22/05/2009

  • Mostrar Resumo
  • O constante aumento da complexidade das aplicações demanda um suporte de hardware computacionalmente mais poderoso. Com a aproximação do limite de velocidade dos processadores, a solução mais viável para o aumento da capacidade de processamento é o paralelismo. Baseado nisso e na crescente capacidade de integração de transistores em um único chip, surgiu o desenvolvimento dos chamados MP-SoC (Multi-Processor System-on-Chip). Os MP-SoCs deverão ser, em um futuro próximo, uma alternativa mais rápida e mais barata aos supercondutores e clusters. O principal motivo para esta previsão é justamente a grande capacidade de integração atual e o desenvolvimento de métodos para a implementação de MP-SoCs que possam chegar ao mercado em poucos anos. Dessa forma, aplicações tidas como destinadas exclusivamente a execução em sistemas multi-computadores e clusters de alto desempenho, deverão migrar para máquinas equipadas com MP-SoCs, dotados de dezenas a centenas de núcleos computacionais. Aplicações na área de exploração de petróleo e gás natural também se caracterizam pela enorme capacidade de processamento requerida e deverão se beneficiar desses novos sistemas de alto desempenho. Esse trabalho pretende avaliar uma tradicional e complexa aplicação da indústria de exploração de petróleo e gás natural, a simulação de reservatórios, sob a nova ótica do desenvolvimento de sistemas computacionais integrados em um único chip, dotados de dezenas a centenas de unidades funcionais.

  • Mostrar Abstract
  • O constante aumento da complexidade das aplicações demanda um suporte de hardware computacionalmente mais poderoso. Com a aproximação do limite de velocidade dos processadores, a solução mais viável para o aumento da capacidade de processamento é o paralelismo. Baseado nisso e na crescente capacidade de integração de transistores em um único chip, surgiu o desenvolvimento dos chamados MP-SoC (Multi-Processor System-on-Chip). Os MP-SoCs deverão ser, em um futuro próximo, uma alternativa mais rápida e mais barata aos supercondutores e clusters. O principal motivo para esta previsão é justamente a grande capacidade de integração atual e o desenvolvimento de métodos para a implementação de MP-SoCs que possam chegar ao mercado em poucos anos. Dessa forma, aplicações tidas como destinadas exclusivamente a execução em sistemas multi-computadores e clusters de alto desempenho, deverão migrar para máquinas equipadas com MP-SoCs, dotados de dezenas a centenas de núcleos computacionais. Aplicações na área de exploração de petróleo e gás natural também se caracterizam pela enorme capacidade de processamento requerida e deverão se beneficiar desses novos sistemas de alto desempenho. Esse trabalho pretende avaliar uma tradicional e complexa aplicação da indústria de exploração de petróleo e gás natural, a simulação de reservatórios, sob a nova ótica do desenvolvimento de sistemas computacionais integrados em um único chip, dotados de dezenas a centenas de unidades funcionais.
5
  • RAPHAEL MENDES DE OLIVEIRA COBE
  • "Processo dirigido por modelos para a E.R. subsidiado pelo uso de ontologias e linguagens naturais controladas"

  • Orientador : PAULO DE FIGUEIREDO PIRES
  • MEMBROS DA BANCA :
  • PAULO DE FIGUEIREDO PIRES
  • FLAVIA COIMBRA DELICATO
  • MARIA LUÍZA MACHADO CAMPOS
  • Data: 29/06/2009

  • Mostrar Resumo
  • A engenharia de requisitos é um processo apoiado pela execução de atividades que resultam em um documento com informações a respeito destes requisitos. Há diferentes notações para representação de requisitos e uma das importantes diferenças entre elas é o nível de abstração. Quanto maior o nível, mais fácil a gerência do artefato especificado na notação e menor o detalhamento das informações representadas. A abordagem MDA propõe técnicas para a navegação entre os diversos níveis de abstração. Entretanto, a notação para representar o modelo independente de computação (CIM), que constitui o artefato equivalente ao documento de requisitos na MDA, ainda não está definida. Este trabalho argumenta que ontologias são notações apropriadas para a representação de modelos independentes de computação e sua integração com as técnicas da MDA torna possível o uso de transformações entre modelos, para a obtenção de um PIM a partir de Ontologias. O uso de ontologias também possibilita que documentos de requisitos beneficiem-se de técnicas de inferências disponíveis na Lógica Descritiva. Para validar tal argumento, este trabalho propõe um processo, alinhado com as atividades da engenharia de requisitos, juntamente com uma ferramenta que provê a infra-estrutura para a obtenção do PIM a partir de CIMs descritos em ontologias.


  • Mostrar Abstract
  • A engenharia de requisitos é um processo apoiado pela execução de atividades que resultam em um documento com informações a respeito destes requisitos. Há diferentes notações para representação de requisitos e uma das importantes diferenças entre elas é o nível de abstração. Quanto maior o nível, mais fácil a gerência do artefato especificado na notação e menor o detalhamento das informações representadas. A abordagem MDA propõe técnicas para a navegação entre os diversos níveis de abstração. Entretanto, a notação para representar o modelo independente de computação (CIM), que constitui o artefato equivalente ao documento de requisitos na MDA, ainda não está definida. Este trabalho argumenta que ontologias são notações apropriadas para a representação de modelos independentes de computação e sua integração com as técnicas da MDA torna possível o uso de transformações entre modelos, para a obtenção de um PIM a partir de Ontologias. O uso de ontologias também possibilita que documentos de requisitos beneficiem-se de técnicas de inferências disponíveis na Lógica Descritiva. Para validar tal argumento, este trabalho propõe um processo, alinhado com as atividades da engenharia de requisitos, juntamente com uma ferramenta que provê a infra-estrutura para a obtenção do PIM a partir de CIMs descritos em ontologias.

6
  • KARLIANE MEDEIROS OVIDIO VALE
  • Uma Análise de Métodos de Distribuição de Atributos em Comitês de Classificadores
  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • MEMBROS DA BANCA :
  • ANNE MAGALY DE PAULA CANUTO
  • BRUNO MOTTA DE CARVALHO
  • GEORGE DARMITON DA CUNHA CAVALCANTI
  • Data: 07/08/2009

  • Mostrar Resumo
  • As pesquisas em inteligência artificial têm como objetivo capacitar o computador a executar funções que são desempenhadas pelo ser humano usando conhecimento e raciocínio. O presente trabalho foi desenvolvido dentro da área de aprendizado de máquina (AM), que é um ramo de estudo da inteligência artificial, sendo relacionado ao projeto e desenvolvimento de algoritmos e técnicas capazes de permitir o aprendizado computacional. O objetivo deste trabalho é analisar um método de seleção de atributos em comitês de classificadores. Esse método, baseado em filtro, utilizou a variância e a correlação de Spearman para ordenar os atributos e estratégias de recompensa e punição para medir a importância de cada atributo na identificação das classes. Foram formados comitês de classificadores tanto homogêneos quanto heterogêneos, e submetidos a cinco métodos de combinação de classificadores (voto, soma, soma ponderada, MLP e naive Bayes), os quais foram aplicados a seis bases de dados distintas (reais e artificiais). Os classificadores aplicados durante os experimentos foram k-nn, MLP, naive Bayes e árvore de decisão. Por fim, foram analisados, comparativamente, o desempenho dos comitês de classificadores utilizando nenhum método de seleção de atributos, utilizando um método de seleção de atributos padrão baseado em filtro (original) e o método proposto. Com base em um teste estatístico, foi demonstrado que houve uma melhora significante na precisão dos comitês.

  • Mostrar Abstract
  • As pesquisas em inteligência artificial têm como objetivo capacitar o computador a executar funções que são desempenhadas pelo ser humano usando conhecimento e raciocínio. O presente trabalho foi desenvolvido dentro da área de aprendizado de máquina (AM), que é um ramo de estudo da inteligência artificial, sendo relacionado ao projeto e desenvolvimento de algoritmos e técnicas capazes de permitir o aprendizado computacional. O objetivo deste trabalho é analisar um método de seleção de atributos em comitês de classificadores. Esse método, baseado em filtro, utilizou a variância e a correlação de Spearman para ordenar os atributos e estratégias de recompensa e punição para medir a importância de cada atributo na identificação das classes. Foram formados comitês de classificadores tanto homogêneos quanto heterogêneos, e submetidos a cinco métodos de combinação de classificadores (voto, soma, soma ponderada, MLP e naive Bayes), os quais foram aplicados a seis bases de dados distintas (reais e artificiais). Os classificadores aplicados durante os experimentos foram k-nn, MLP, naive Bayes e árvore de decisão. Por fim, foram analisados, comparativamente, o desempenho dos comitês de classificadores utilizando nenhum método de seleção de atributos, utilizando um método de seleção de atributos padrão baseado em filtro (original) e o método proposto. Com base em um teste estatístico, foi demonstrado que houve uma melhora significante na precisão dos comitês.
7
  • KARLOS THADEU MATIAS VITAL DE OLIVEIRA
  • Um processo baseado em modelos para promover o alinhamento entre a estratégia de negócio e TI

  • Orientador : PAULO DE FIGUEIREDO PIRES
  • MEMBROS DA BANCA :
  • PAULO DE FIGUEIREDO PIRES
  • FLAVIA COIMBRA DELICATO
  • JAIR CAVALCANTI LEITE
  • LEONARDO GRESTA PAULINO MURTA
  • Data: 10/08/2009

  • Mostrar Resumo
  • Atualmente, com o crescente aumento da complexidade do negócio, as organizações
    clamam por sistemas de informação que ajudem a responder rapidamente as novas exigências dos
    processos de produção de produtos e serviços. Um sistema de informação deixa de ser apenas uma
    ferramenta de suporte e passa a ser uma parte integrante do negócio. Todavia, apesar das
    importantes evoluções tecnológicas alcançadas nos últimos anos, verifica-se que os sistemas de
    informação que suportam o negócio, ainda não respondem eficazmente às constantes alterações a
    que a organização está sujeita. Um dos principais problemas com os sistemas de Informação atuais
    é falta de alinhamento entre a estratégia de negócio e a tecnologia de informação. O conceito de
    alinhamento estratégico pode ser definido como sendo a sintonia existente entre as estratégias e
    objetivos do negócio com as estratégias, objetivos e funções da tecnologia da informação, de modo
    que haja contribuição para o aumento da competitividade da organização ao longo do tempo.
    Alinhamento estratégico, aliado ao planejamento estratégico, é um importante instrumento de
    gestão. Nesse sentido, abordagens para a operacionalização desse alinhamento estão surgindo,
    entretanto, ainda em estado inicial devido ao fato de ser um conceito relativamente novo na
    literatura. Outro ponto que deve ser levado em consideração durante o alinhamento estratégico é a
    questão da rastreabilidade entre os elementos de negócio e TI. A rastreabilidade é necessária, por
    exemplo, quando se deseja saber exatamente qual meta definida na estratégia de negócio não foi ou
    deixou de ser aceita devido a uma modificação realizada na estratégia de TI. Poucas propostas
    apresentam formas concretas apoiadas por sistemas de software para obter o alinhamento
    estratégico levando em consideração essa rastreabilidade. Nesse contexto o objetivo desse trabalho
    é propor a criação de um processo de alinhamento estratégico apoiado por um sistema de software a
    qual seja capaz de permitir a rastreabilidade entre os objetivos organizacionais e as atividades dos
    processos de negócio, tomando como base para isso, padrões de formalização definidos sob uma
    abordagem orientada a modelos.


  • Mostrar Abstract
  • Atualmente, com o crescente aumento da complexidade do negócio, as organizações
    clamam por sistemas de informação que ajudem a responder rapidamente as novas exigências dos
    processos de produção de produtos e serviços. Um sistema de informação deixa de ser apenas uma
    ferramenta de suporte e passa a ser uma parte integrante do negócio. Todavia, apesar das
    importantes evoluções tecnológicas alcançadas nos últimos anos, verifica-se que os sistemas de
    informação que suportam o negócio, ainda não respondem eficazmente às constantes alterações a
    que a organização está sujeita. Um dos principais problemas com os sistemas de Informação atuais
    é falta de alinhamento entre a estratégia de negócio e a tecnologia de informação. O conceito de
    alinhamento estratégico pode ser definido como sendo a sintonia existente entre as estratégias e
    objetivos do negócio com as estratégias, objetivos e funções da tecnologia da informação, de modo
    que haja contribuição para o aumento da competitividade da organização ao longo do tempo.
    Alinhamento estratégico, aliado ao planejamento estratégico, é um importante instrumento de
    gestão. Nesse sentido, abordagens para a operacionalização desse alinhamento estão surgindo,
    entretanto, ainda em estado inicial devido ao fato de ser um conceito relativamente novo na
    literatura. Outro ponto que deve ser levado em consideração durante o alinhamento estratégico é a
    questão da rastreabilidade entre os elementos de negócio e TI. A rastreabilidade é necessária, por
    exemplo, quando se deseja saber exatamente qual meta definida na estratégia de negócio não foi ou
    deixou de ser aceita devido a uma modificação realizada na estratégia de TI. Poucas propostas
    apresentam formas concretas apoiadas por sistemas de software para obter o alinhamento
    estratégico levando em consideração essa rastreabilidade. Nesse contexto o objetivo desse trabalho
    é propor a criação de um processo de alinhamento estratégico apoiado por um sistema de software a
    qual seja capaz de permitir a rastreabilidade entre os objetivos organizacionais e as atividades dos
    processos de negócio, tomando como base para isso, padrões de formalização definidos sob uma
    abordagem orientada a modelos.

8
  • GEAM CARLOS DE ARAUJO FILGUEIRA
  • CrossMDA-SPL: Uma Abordagem para Gerência de Variações Baseada em Modelos e Aspectos

  • Orientador : UIRA KULESZA
  • MEMBROS DA BANCA :
  • UIRA KULESZA
  • FLAVIA COIMBRA DELICATO
  • PAULO DE FIGUEIREDO PIRES
  • ROSANA TERESINHA VACCARE BRAGA
  • Data: 11/08/2009

  • Mostrar Resumo
  • Esse trabalho propõe uma abordagem sistemática para gerência de variações usando os mecanismos das abordagens de Desenvolvimento de Software Orientado a Aspectos (DSOA) e Desenvolvimento Dirigido por Modelos (DDM). O objetivo central da abordagem, denominada CrossMDA-SPL, é melhorar a gerência e modularização de variações de arquiteturas de LPSs em um nível de abstração alto (modelo). A abordagem define alguns artefatos base para promover a separação clara entres as features similares e variáveis na arquitetura da LPS. Os artefatos são representados por dois modelos denominados, (i) modelo de domínio base – responsável por especificar as features comuns a todos os membros da LPS; e (ii) modelo de variabilidades – responsável por representar as features variáveis da LPS. Além disso, a abordagem CrossMDA-SPL é composta por: (i) diretrizes para modelagem e representação das variabilidades; (ii) subprocessos CrossMDA-SPL; e (iii) modelos da arquitetura da LPS ou instância do produto da LPS. As diretrizes utilizam as vantagens de DSOA e DDM para promover uma melhor modularização das features variáveis da arquitetura da LPS durante a criação dos modelos base e de variabilidades da abordagem. Os subprocessos são responsáveis pela combinação, automática através de processos de transformação de modelos, entre os modelos de domínio base e variabilidades, e geração dos novos modelos que representam a implementação da arquitetura de LPS considerando uma tecnologia específica ou um modelo de instância da LPS. Demonstramos meios para um eficaz relacionamento com variabilidades no nível de modelo. Os conceitos são demonstrados e avaliados com a execução de estudos de caso pertencentes a domínios de aplicação de LPS.


  • Mostrar Abstract
  • Esse trabalho propõe uma abordagem sistemática para gerência de variações usando os mecanismos das abordagens de Desenvolvimento de Software Orientado a Aspectos (DSOA) e Desenvolvimento Dirigido por Modelos (DDM). O objetivo central da abordagem, denominada CrossMDA-SPL, é melhorar a gerência e modularização de variações de arquiteturas de LPSs em um nível de abstração alto (modelo). A abordagem define alguns artefatos base para promover a separação clara entres as features similares e variáveis na arquitetura da LPS. Os artefatos são representados por dois modelos denominados, (i) modelo de domínio base – responsável por especificar as features comuns a todos os membros da LPS; e (ii) modelo de variabilidades – responsável por representar as features variáveis da LPS. Além disso, a abordagem CrossMDA-SPL é composta por: (i) diretrizes para modelagem e representação das variabilidades; (ii) subprocessos CrossMDA-SPL; e (iii) modelos da arquitetura da LPS ou instância do produto da LPS. As diretrizes utilizam as vantagens de DSOA e DDM para promover uma melhor modularização das features variáveis da arquitetura da LPS durante a criação dos modelos base e de variabilidades da abordagem. Os subprocessos são responsáveis pela combinação, automática através de processos de transformação de modelos, entre os modelos de domínio base e variabilidades, e geração dos novos modelos que representam a implementação da arquitetura de LPS considerando uma tecnologia específica ou um modelo de instância da LPS. Demonstramos meios para um eficaz relacionamento com variabilidades no nível de modelo. Os conceitos são demonstrados e avaliados com a execução de estudos de caso pertencentes a domínios de aplicação de LPS.

9
  • VICTOR HUGO DE CARVALHO FERNANDES
  • CrossMDA: promovendo o desaclopamento de pointcuts em um processo de Desenvolvimento Orientado a Aspectos Dirigidos a Modelos

  • Orientador : FLAVIA COIMBRA DELICATO
  • MEMBROS DA BANCA :
  • FLAVIA COIMBRA DELICATO
  • PAULO DE FIGUEIREDO PIRES
  • UIRA KULESZA
  • CLAUDIA MARIA FERNANDES ARAÚJO RIBEIRO
  • PAULO HENRIQUE MONTEIRO BORBA
  • Data: 19/08/2009

  • Mostrar Resumo
  • É indiscutível a necessidade de evolução dos softwares nos ambientes coorporativos, visto que os negócios evoluem e os sistemas devem acompanhar esta evolução para continuar a atender as necessidades das empresas. Portanto, é constante a busca dos desenvolvedores por metodologias que possibilitem cada vez mais uma maior modularização dos softwares, pois quanto melhor modularizado menor será o custo da evolução dos sistemas [Parnas 1972]. O Desenvolvimento Orientado a Aspectos (DSOA) tem se destacado como uma abordagem que provê modularização dos sistemas de software e favorece o reuso de componentes, trazendo assim grande potencial para reduzir o impacto ocasionado pela evolução do software. A abordagem de DSOA adiciona uma nova abstração, o aspecto, que objetiva modularizar comportamentos com características transversais a um sistema. O DSOA separa um sistema em conceitos base que são comumente os requisitos funcionais, enquanto conceitos transversais são as funcionalidades não são adequadamente modularizados com os paradigmas de decomposição tradicionais, comumente os requisitos não-funcionais. A utilização da abordagem de DSOA favorece a modularização e reuso de componentes e, conseqüentemente, reduz custos do desenvolvimento de sistemas, porém, paradoxalmente a sua proposta a evolução do software que fazem uso da abordagem de DSOA tem um maior custo de evolução. Isto ocorre devido a existência do problema da fragilidade de pointcuts. Pointcuts são expressões que configuram quais os pontos do software que o aspecto irá interceptar, portanto os pointcuts fazem referência direta a estrutura e/ou comportamento do software. O problema da fragilidade de pointcuts ocorre quando todos os pointcuts de cada aspecto devem ser revisados devido a modificações no software para garantir que eles continuam válidos mesmo após as alterações realizadas na estrutura e/ou comportamento do software. Estudos recentes [Kellens, Mens, Brichau e Gybels 2006b], [Batista e Veira 2007] exploram a especificação de pointcuts baseados em modelos conceituais, ou seja, ao invés de referenciar diretamente o código base referenciam um modelo conceitual do software. O modelo conceitual é uma abstração de mais alto nível dos conceitos presentes no modelo de negócios. As abstrações existentes no modelo conceitual são criadas considerando características estruturais e comportamentais do modelo de negócios. Tal abordagem eleva o grau de abstração do relacionamento criado entre o modelo base e o de aspectos. Os modelos conceituais, por serem representações mais abstratas do modelo de negócios, possuem uma maior estabilidade do que o modelo de negócios em si. Conseqüentemente, os efeitos da evolução do modelo de negócios sobre os pointcuts são minimizados já que estes são definidos em termos do modelo conceitual e não de instâncias especificas desse modelo, como tipicamente acontece em DSOA tradicional. Além disso, os pointcuts orientados a modelos provêem meios para documentar e verificar a consistência entre o modelo conceitual e o modelo de negócio. Neste trabalho é proposta uma nova instanciação da abordagem de pointcuts orientados a modelos para tratar da fragilidade de pointcuts. A abordagem proposta é denominada de pointcuts baseados em visões conceituais, pois as definições dos pointcuts são criadas com base em visões existentes no modelo conceitual. Os pointcuts baseados em visões conceituais são aplicáveis a ambientes de desenvolvimento MDA [MDA 2008] e implementado neste trabalho como uma extensão do arcabouço CrossMDA [Alves, Pires, Delicato e Campos 2006]. O CrossMDA é um arcabouço criado para ser trabalhar com DSOA – Desenvolvimento de Software Orientado a Aspectos - em uma abordagem MDA, com o objetivo de prover separação de interesses na dimensão vertical, através da transformação entre modelos, e horizontal, através do uso de aspectos para modularizar interesses transversais. Em sua versão inicial o CrossMDA permitia apenas a definição de pointcuts utilizando a abordagem tradicional e, conseqüentemente, criando um forte acoplamento entre as definições de pointcuts e o modelo base. Esse trabalho estende essa estratégia de forma a dar suporte a definição de pointcuts baseados em visões conceituais, a versão estendida do arcabouço é chamada de CrossMDA2.


  • Mostrar Abstract
  • É indiscutível a necessidade de evolução dos softwares nos ambientes coorporativos, visto que os negócios evoluem e os sistemas devem acompanhar esta evolução para continuar a atender as necessidades das empresas. Portanto, é constante a busca dos desenvolvedores por metodologias que possibilitem cada vez mais uma maior modularização dos softwares, pois quanto melhor modularizado menor será o custo da evolução dos sistemas [Parnas 1972]. O Desenvolvimento Orientado a Aspectos (DSOA) tem se destacado como uma abordagem que provê modularização dos sistemas de software e favorece o reuso de componentes, trazendo assim grande potencial para reduzir o impacto ocasionado pela evolução do software. A abordagem de DSOA adiciona uma nova abstração, o aspecto, que objetiva modularizar comportamentos com características transversais a um sistema. O DSOA separa um sistema em conceitos base que são comumente os requisitos funcionais, enquanto conceitos transversais são as funcionalidades não são adequadamente modularizados com os paradigmas de decomposição tradicionais, comumente os requisitos não-funcionais. A utilização da abordagem de DSOA favorece a modularização e reuso de componentes e, conseqüentemente, reduz custos do desenvolvimento de sistemas, porém, paradoxalmente a sua proposta a evolução do software que fazem uso da abordagem de DSOA tem um maior custo de evolução. Isto ocorre devido a existência do problema da fragilidade de pointcuts. Pointcuts são expressões que configuram quais os pontos do software que o aspecto irá interceptar, portanto os pointcuts fazem referência direta a estrutura e/ou comportamento do software. O problema da fragilidade de pointcuts ocorre quando todos os pointcuts de cada aspecto devem ser revisados devido a modificações no software para garantir que eles continuam válidos mesmo após as alterações realizadas na estrutura e/ou comportamento do software. Estudos recentes [Kellens, Mens, Brichau e Gybels 2006b], [Batista e Veira 2007] exploram a especificação de pointcuts baseados em modelos conceituais, ou seja, ao invés de referenciar diretamente o código base referenciam um modelo conceitual do software. O modelo conceitual é uma abstração de mais alto nível dos conceitos presentes no modelo de negócios. As abstrações existentes no modelo conceitual são criadas considerando características estruturais e comportamentais do modelo de negócios. Tal abordagem eleva o grau de abstração do relacionamento criado entre o modelo base e o de aspectos. Os modelos conceituais, por serem representações mais abstratas do modelo de negócios, possuem uma maior estabilidade do que o modelo de negócios em si. Conseqüentemente, os efeitos da evolução do modelo de negócios sobre os pointcuts são minimizados já que estes são definidos em termos do modelo conceitual e não de instâncias especificas desse modelo, como tipicamente acontece em DSOA tradicional. Além disso, os pointcuts orientados a modelos provêem meios para documentar e verificar a consistência entre o modelo conceitual e o modelo de negócio. Neste trabalho é proposta uma nova instanciação da abordagem de pointcuts orientados a modelos para tratar da fragilidade de pointcuts. A abordagem proposta é denominada de pointcuts baseados em visões conceituais, pois as definições dos pointcuts são criadas com base em visões existentes no modelo conceitual. Os pointcuts baseados em visões conceituais são aplicáveis a ambientes de desenvolvimento MDA [MDA 2008] e implementado neste trabalho como uma extensão do arcabouço CrossMDA [Alves, Pires, Delicato e Campos 2006]. O CrossMDA é um arcabouço criado para ser trabalhar com DSOA – Desenvolvimento de Software Orientado a Aspectos - em uma abordagem MDA, com o objetivo de prover separação de interesses na dimensão vertical, através da transformação entre modelos, e horizontal, através do uso de aspectos para modularizar interesses transversais. Em sua versão inicial o CrossMDA permitia apenas a definição de pointcuts utilizando a abordagem tradicional e, conseqüentemente, criando um forte acoplamento entre as definições de pointcuts e o modelo base. Esse trabalho estende essa estratégia de forma a dar suporte a definição de pointcuts baseados em visões conceituais, a versão estendida do arcabouço é chamada de CrossMDA2.

10
  • Valério Gutemberg de Medeiros Júnior
  • Aplicação do Método B ao Projeto Formal de Software Embarcado
  • Orientador : DAVID BORIS PAUL DEHARBE
  • MEMBROS DA BANCA :
  • DAVID BORIS PAUL DEHARBE
  • ANAMARIA MARTINS MOREIRA
  • ANDRE LAURINDO MAITELLI
  • ANA LÚCIA CANECA CAVALCANTI
  • Data: 09/09/2009

  • Mostrar Resumo
  • Este trabalho apresenta uma metodologia de projeto proposta em [Dantas 2008] para verificação formal do modelo funcional do software até o nível da linguagem assembly. Essa metodologia é fundamentada no método B, o qual foi desenvolvido com o apoio e interesse da multinacional do setor de petróleo e gás British Petroleum (BP). A evolução dessa metodologia tem como objetivo contribuir na resposta de um importante problema, que pertence aos grandes desafios da computação, conhecido como "The Verifying Compiler". Nesse contexto, o presente trabalho descreve um modelo formal do microcontrolador Z80 e um sistema real da área de petróleo. O modelo formal do Z80 foi desenvolvido e documentado, por ser um pré-requisito para a verificação até nível de assembly. A fim de validar e desenvolver a metodologia citada, ela foi aplicada em um sistema de teste de produção de poços de petróleo, o qual é apresentado neste trabalho. Atualmente, algumas atividades são realizadas manualmente. No entanto, uma parte significativa dessas atividades pode ser automatizada através de um compilador específico. Para esse fim, a modelagem formal do microcontrolador e a modelagem do sistema de teste de produção fornecem conhecimentos e experiências importantes para o projeto de um novo compilador. Em suma, esse trabalho deve melhorar a viabilidade de um dos mais rigorosos critérios de verificação formal: acelerando o processo de verificação, reduzindo o tempo de projeto e aumentando a qualidade e confiança do produto de software final. Todas essas qualidades são bastante relevantes para sistemas que envolvem sérios riscos ou exigem alta confiança, os quais são muito comuns na indústria do petróleo.

  • Mostrar Abstract
  • Este trabalho apresenta uma metodologia de projeto proposta em [Dantas 2008] para verificação formal do modelo funcional do software até o nível da linguagem assembly. Essa metodologia é fundamentada no método B, o qual foi desenvolvido com o apoio e interesse da multinacional do setor de petróleo e gás British Petroleum (BP). A evolução dessa metodologia tem como objetivo contribuir na resposta de um importante problema, que pertence aos grandes desafios da computação, conhecido como "The Verifying Compiler". Nesse contexto, o presente trabalho descreve um modelo formal do microcontrolador Z80 e um sistema real da área de petróleo. O modelo formal do Z80 foi desenvolvido e documentado, por ser um pré-requisito para a verificação até nível de assembly. A fim de validar e desenvolver a metodologia citada, ela foi aplicada em um sistema de teste de produção de poços de petróleo, o qual é apresentado neste trabalho. Atualmente, algumas atividades são realizadas manualmente. No entanto, uma parte significativa dessas atividades pode ser automatizada através de um compilador específico. Para esse fim, a modelagem formal do microcontrolador e a modelagem do sistema de teste de produção fornecem conhecimentos e experiências importantes para o projeto de um novo compilador. Em suma, esse trabalho deve melhorar a viabilidade de um dos mais rigorosos critérios de verificação formal: acelerando o processo de verificação, reduzindo o tempo de projeto e aumentando a qualidade e confiança do produto de software final. Todas essas qualidades são bastante relevantes para sistemas que envolvem sérios riscos ou exigem alta confiança, os quais são muito comuns na indústria do petróleo.
11
  • FERNANDA MONTEIRO DE SOUZA
  • Geração de Casos de Teste a Partir de Especificações B

  • Orientador : ANAMARIA MARTINS MOREIRA
  • MEMBROS DA BANCA :
  • ALEXANDRE CABRAL MOTA
  • ANAMARIA MARTINS MOREIRA
  • ROBERTA DE SOUZA COELHO
  • Data: 04/12/2009

  • Mostrar Resumo
  • Com o crescente aumento da complexidade dos sistemas de software, há também um aumento na preocupação com suas falhas. Essas falhas podem causar prejuízos financeiros e até prejuízos de vida. Sendo assim, propomos neste trabalho a minimização de falhas através de testes em software especificado formalmente. A conjunção de testes e especificações formais vem ganhando força na academia principalmente através dos TBM (Testes Baseados em Modelos). Neste trabalho, é proposto um método para geração de testes a partir de especificações formais B. Este método se baseia na sistematização das técnicas de testes caixa preta de análise do valor limite, particionamento de equivalência, bem como da técnica dos pares ortogonais. Essas técnicas são definidas nas referências (Black, 2003) (Burstein, 2003) (Pressman, 2005) (Myers, 2004) de forma não sistemática. 

    As técnicas caixa preta são aplicadas de acordo com o grau de cobertura que o testador deseja para os testes de sua aplicação. Para isso o método proposto trabalha com três níveis de cobertura de testes. Também desenvolvemos a idéia de limites relativos para variáveis de intervalo quando os limites absolutos eram impossíveis de serem encontrados por restrições impostas por variáveis dependentes. Os dados de teste gerados são independentes de linguagem, ou seja, eles são gerados para servirem de entrada para casos de teste em qualquer linguagem, fazendo-se adaptações de sintaxe.     


  • Mostrar Abstract
  • Com o crescente aumento da complexidade dos sistemas de software, há também um aumento na preocupação com suas falhas. Essas falhas podem causar prejuízos financeiros e até prejuízos de vida. Sendo assim, propomos neste trabalho a minimização de falhas através de testes em software especificado formalmente. A conjunção de testes e especificações formais vem ganhando força na academia principalmente através dos TBM (Testes Baseados em Modelos). Neste trabalho, é proposto um método para geração de testes a partir de especificações formais B. Este método se baseia na sistematização das técnicas de testes caixa preta de análise do valor limite, particionamento de equivalência, bem como da técnica dos pares ortogonais. Essas técnicas são definidas nas referências (Black, 2003) (Burstein, 2003) (Pressman, 2005) (Myers, 2004) de forma não sistemática. 

    As técnicas caixa preta são aplicadas de acordo com o grau de cobertura que o testador deseja para os testes de sua aplicação. Para isso o método proposto trabalha com três níveis de cobertura de testes. Também desenvolvemos a idéia de limites relativos para variáveis de intervalo quando os limites absolutos eram impossíveis de serem encontrados por restrições impostas por variáveis dependentes. Os dados de teste gerados são independentes de linguagem, ou seja, eles são gerados para servirem de entrada para casos de teste em qualquer linguagem, fazendo-se adaptações de sintaxe.     

2008
Dissertações
1
  • ANDRÉ GUSTAVO DUARTE DE ALMEIDA
  • UM AMBIENTE MULTI-MIDDLEWARE PARA DESENVOLVIMENTO DE APLICAÇÕES DISTRIBUÍDAS
  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • EDMUNDO ROBERTO MAURO MADEIRA
  • FLAVIA COIMBRA DELICATO
  • THAIS VASCONCELOS BATISTA
  • Data: 12/02/2008

  • Mostrar Resumo
  • Este trabalho apresenta a proposta de um ambiente multi-middleware para desenvolvimento de aplicações distribuídas, o qual abstrai diferentes plataformas de middleware subjacentes. O trabalho descreve: (i) a arquitetura de referência especificada para o ambiente, (ii) uma implementação que valida tal arquitetura integrando CORBA e EJB, (iii) um estudo de caso ilustrando o uso do ambiente, (iv) a análise de desempenho. O ambiente proposto permite alcançar interoperabilidade de plataformas de middleware, promovendo o reuso de componentes de diferentes plataformas de forma transparente para o desenvolvedor e sem perdas expressivas em termos de desempenho. Na implementação desenvolvemos um plugin para IDE Eclipse que permite que os eventuais desenvolvedores obtenham maior produtividade ao desenvolver aplicações usando o ambiente.

  • Mostrar Abstract
  • Este trabalho apresenta a proposta de um ambiente multi-middleware para desenvolvimento de aplicações distribuídas, o qual abstrai diferentes plataformas de middleware subjacentes. O trabalho descreve: (i) a arquitetura de referência especificada para o ambiente, (ii) uma implementação que valida tal arquitetura integrando CORBA e EJB, (iii) um estudo de caso ilustrando o uso do ambiente, (iv) a análise de desempenho. O ambiente proposto permite alcançar interoperabilidade de plataformas de middleware, promovendo o reuso de componentes de diferentes plataformas de forma transparente para o desenvolvedor e sem perdas expressivas em termos de desempenho. Na implementação desenvolvemos um plugin para IDE Eclipse que permite que os eventuais desenvolvedores obtenham maior produtividade ao desenvolver aplicações usando o ambiente.
2
  • HELIDA SALLES SANTOS
  • “The Interval Constructor on Classes of ML-Algebras”
  • MEMBROS DA BANCA :
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • Data: 15/02/2008

  • Mostrar Resumo
  • Monoidal logic, ML for short, which formalized the fuzzy logics of continuous t-norms and their residua, has arisen great interest, since it has been applied to fuzzy mathematics, artificial intelligence, and other areas. It is clear that fuzzy logics basically try to represent imperfect or fuzzy information aiming to model the natural human reasoning. On the other hand, in order to deal with imprecision in the computational representation of real numbers, the use of inter- vals have been proposed, as it can guarantee that the results of nu- merical computation are in a bounded interval, controlling, in this way, the numerical errors produced by successive roundings. There are several ways to connect both areas; the most usual one is to con- sider interval membership degrees. The algebraic counterpart of ML is ML-algebra, an interesting structure due to the fact that by adding some properties it is possible to reach different classes of residuated lattices. We propose to apply an interval constructor to ML-algebras and some of their subclasses, to verify some properties within these algebras, in addition to the analysis of the algebraic aspects of them.

  • Mostrar Abstract
  • Monoidal logic, ML for short, which formalized the fuzzy logics of continuous t-norms and their residua, has arisen great interest, since it has been applied to fuzzy mathematics, artificial intelligence, and other areas. It is clear that fuzzy logics basically try to represent imperfect or fuzzy information aiming to model the natural human reasoning. On the other hand, in order to deal with imprecision in the computational representation of real numbers, the use of inter- vals have been proposed, as it can guarantee that the results of nu- merical computation are in a bounded interval, controlling, in this way, the numerical errors produced by successive roundings. There are several ways to connect both areas; the most usual one is to con- sider interval membership degrees. The algebraic counterpart of ML is ML-algebra, an interesting structure due to the fact that by adding some properties it is possible to reach different classes of residuated lattices. We propose to apply an interval constructor to ML-algebras and some of their subclasses, to verify some properties within these algebras, in addition to the analysis of the algebraic aspects of them.
3
  • MONICA MAGALHAES PEREIRA
  • PROPOSTA E IMPLEMENTAÇÃO DE UMA ARQUITETURA RECONFIGURÁVEL HÍBRIDA PARA APLICAÇÕES BASEADAS EM FLUXO DE DADOS
  • Orientador : IVAN SARAIVA SILVA
  • MEMBROS DA BANCA :
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • IVAN SARAIVA SILVA
  • Data: 21/02/2008

  • Mostrar Resumo
  • O aumento na complexidade das aplicações vem exigindo dispositivos cada vez mais flexíveis e capazes de alcançar alto desempenho. As soluções de hardware tradicionais são ineficientes para atender as exigências dessas aplicações. Processadores de propósito geral, embora possuam flexibilidade inerente devido à capacidade de executar diversos tipos de tarefas, não alcançam alto desempenho quando comparados às arquiteturas de aplicação específica. Este último, por ser especializado em uma pequena quantidade de tarefas, alcança alto desempenho, porém não possui flexibilidade. Arquiteturas reconfiguráveis surgiram como uma alternativa às abordagens convencionais e vem ganhado espaço nas últimas décadas. A proposta desse paradigma é alterar o comportamento do hardware de acordo com a aplicação a ser executada. Dessa forma, é possível equilibrar flexibilidade e desempenho e atender a demanda das aplicações atuais. Esse trabalho propõe o projeto e a implementação de uma arquitetura reconfigurável híbrida de granularidade grossa, voltada a aplicações baseadas em fluxo de dados. A arquitetura, denominada RoSA, consiste de um bloco reconfigurável anexado a um processador. Seu objetivo é explorar paralelismo no nível de instrução de aplicações com intenso fluxo de dados e com isso acelerar a execução dessas aplicações no bloco reconfigurável. A exploração de paralelismo no nível de instrução é feita em tempo de compilação e para tal, esse trabalho também propõe uma fase de otimização para a arquitetura RoSA a ser incluída no compilador GCC. Para o projeto da arquitetura esse trabalho também apresenta uma metodologia baseada no reuso de hardware em caminho de dados, denominada RoSE. Sua proposta é visualizar as unidades reconfiguráveis através de níveis de reusabilidade, que permitem a economia de área e a simplificação do projeto do caminho de dados da arquitetura. A arquitetura proposta foi implementada em linguagem de descrição de hardware (VHDL). Sua validação deu-se através de simulações e da prototipação em FPGA. Para análise de desempenho foram utilizados alguns estudos de caso que demonstraram uma aceleração de até 11 vezes na execução de algumas aplicações.

  • Mostrar Abstract
  • O aumento na complexidade das aplicações vem exigindo dispositivos cada vez mais flexíveis e capazes de alcançar alto desempenho. As soluções de hardware tradicionais são ineficientes para atender as exigências dessas aplicações. Processadores de propósito geral, embora possuam flexibilidade inerente devido à capacidade de executar diversos tipos de tarefas, não alcançam alto desempenho quando comparados às arquiteturas de aplicação específica. Este último, por ser especializado em uma pequena quantidade de tarefas, alcança alto desempenho, porém não possui flexibilidade. Arquiteturas reconfiguráveis surgiram como uma alternativa às abordagens convencionais e vem ganhado espaço nas últimas décadas. A proposta desse paradigma é alterar o comportamento do hardware de acordo com a aplicação a ser executada. Dessa forma, é possível equilibrar flexibilidade e desempenho e atender a demanda das aplicações atuais. Esse trabalho propõe o projeto e a implementação de uma arquitetura reconfigurável híbrida de granularidade grossa, voltada a aplicações baseadas em fluxo de dados. A arquitetura, denominada RoSA, consiste de um bloco reconfigurável anexado a um processador. Seu objetivo é explorar paralelismo no nível de instrução de aplicações com intenso fluxo de dados e com isso acelerar a execução dessas aplicações no bloco reconfigurável. A exploração de paralelismo no nível de instrução é feita em tempo de compilação e para tal, esse trabalho também propõe uma fase de otimização para a arquitetura RoSA a ser incluída no compilador GCC. Para o projeto da arquitetura esse trabalho também apresenta uma metodologia baseada no reuso de hardware em caminho de dados, denominada RoSE. Sua proposta é visualizar as unidades reconfiguráveis através de níveis de reusabilidade, que permitem a economia de área e a simplificação do projeto do caminho de dados da arquitetura. A arquitetura proposta foi implementada em linguagem de descrição de hardware (VHDL). Sua validação deu-se através de simulações e da prototipação em FPGA. Para análise de desempenho foram utilizados alguns estudos de caso que demonstraram uma aceleração de até 11 vezes na execução de algumas aplicações.
4
  • ANA LUISA FERREIRA DE MEDEIROS
  • MARISA-MDD – Uma Abordagem para Transformações entre Modelos Orientados a Aspectos: dos Requisitos ao Projeto Detalhado.
  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • THAIS VASCONCELOS BATISTA
  • PAULO DE FIGUEIREDO PIRES
  • CHRISTINA VON FLACH GARCIA CHAVEZ
  • LYRENE FERNANDES DA SILVA
  • Data: 09/06/2008

  • Mostrar Resumo
  • As abordagens orientadas a aspectos relacionadas a diferentes atividades do processo de desenvolvimento de software são, em geral, independentes e os seus modelos e artefatos não estão alinhados ou inseridos em um processo coerente. No desenvolvimento orientado a modelos, os diversos modelos e a correspondência entre eles são especificados com rigor. Com a integração do desenvolvimento orientado a aspectos (DSOA) e o desenvolvimento baseado em modelos (MDD) pode-se automaticamente propagar modelos de uma atividade para outra, evitando a perda de informações e de decisões importantes estabelecidas em cada atividade. Este trabalho apresenta MARISA-MDD, uma estratégia baseada em modelos que integra as atividades de requisitos, arquitetura e projeto detalhado orientado a aspectos, usando as linguagens AOV-Graph, AspectualACME e aSideML, respectivamente. MARISA-MDD define, para cada atividade, modelos representativos (e metamodelos correspondentes) e um conjunto de transformações entre os modelos de cada linguagem. Tais transformações foram especificadas e implementadas em ATL (Atlas Definition Language), no ambiente Eclipse. MARISA-MDD permite a propagação automática entre modelos AOV-Graph, AspectualACME e aSideML. Para validar a abordagem proposta dois estudos de caso, o Health Watcher e o Mobile Media foram usados no ambiente MARISA-MDD para geração automática dos modelos AspectualACME e aSideML, a partir do modelo AO-VGraph.

  • Mostrar Abstract
  • As abordagens orientadas a aspectos relacionadas a diferentes atividades do processo de desenvolvimento de software são, em geral, independentes e os seus modelos e artefatos não estão alinhados ou inseridos em um processo coerente. No desenvolvimento orientado a modelos, os diversos modelos e a correspondência entre eles são especificados com rigor. Com a integração do desenvolvimento orientado a aspectos (DSOA) e o desenvolvimento baseado em modelos (MDD) pode-se automaticamente propagar modelos de uma atividade para outra, evitando a perda de informações e de decisões importantes estabelecidas em cada atividade. Este trabalho apresenta MARISA-MDD, uma estratégia baseada em modelos que integra as atividades de requisitos, arquitetura e projeto detalhado orientado a aspectos, usando as linguagens AOV-Graph, AspectualACME e aSideML, respectivamente. MARISA-MDD define, para cada atividade, modelos representativos (e metamodelos correspondentes) e um conjunto de transformações entre os modelos de cada linguagem. Tais transformações foram especificadas e implementadas em ATL (Atlas Definition Language), no ambiente Eclipse. MARISA-MDD permite a propagação automática entre modelos AOV-Graph, AspectualACME e aSideML. Para validar a abordagem proposta dois estudos de caso, o Health Watcher e o Mobile Media foram usados no ambiente MARISA-MDD para geração automática dos modelos AspectualACME e aSideML, a partir do modelo AO-VGraph.
5
  • ANDRE MEDEIROS DANTAS
  • Avaliação de Reusabilidade de Aplicações Web Baseadas em Frameworks Orientados a Ações e a Componentes: Estudo de Caso sobre Frameworks Apache Struts e JavaServer Faces.
  • MEMBROS DA BANCA :
  • ADILSON BARBOZA LOPES
  • ANDRE MAURICIO CUNHA CAMPOS
  • JORGE HENRIQUE CABRAL FERNANDES
  • Data: 03/07/2008

  • Mostrar Resumo
  • O uso de frameworks para as camadas do Controlador e Visão da arquitetura MVC adaptada para aplicações Web se tornou bastante popular ao longo dos anos. Eles são classificados em "Orientados a Ações" ou "Orientados a Componentes", de acordo com a estratégia de solução adotada pelas ferramentas. A escolha por uma dessas estratégias faz com que o design da arquitetura do sistema adquira características não-funcionais ocasionadas pela forma com que o framework leva o desenvolvedor a implementar o sistema. A reusabilidade dos componentes é uma dessas características muito importante para atividades como evolução e manutenção do sistema. O trabalho dessa dissertação consiste em uma análise de quanto à reusabilidade pode ser impactada de acordo com a utilização de um tipo de framework. Para isso foi realizado um estudo de caso com a implementação de uma pequena aplicação de controle acadêmico se utilizando dos frameworks Apache Struts e JavaServer Faces, os principais representantes dessa categoria de framework Web. Para essa avaliação foi utilizado um conjunto de métricas específicas do modelo de qualidade e a abordagem GQM (Goal-Question-Metric) proposta pelo framework de avaliação de reusabilidade posteriormente apresentado no texto.

  • Mostrar Abstract
  • O uso de frameworks para as camadas do Controlador e Visão da arquitetura MVC adaptada para aplicações Web se tornou bastante popular ao longo dos anos. Eles são classificados em "Orientados a Ações" ou "Orientados a Componentes", de acordo com a estratégia de solução adotada pelas ferramentas. A escolha por uma dessas estratégias faz com que o design da arquitetura do sistema adquira características não-funcionais ocasionadas pela forma com que o framework leva o desenvolvedor a implementar o sistema. A reusabilidade dos componentes é uma dessas características muito importante para atividades como evolução e manutenção do sistema. O trabalho dessa dissertação consiste em uma análise de quanto à reusabilidade pode ser impactada de acordo com a utilização de um tipo de framework. Para isso foi realizado um estudo de caso com a implementação de uma pequena aplicação de controle acadêmico se utilizando dos frameworks Apache Struts e JavaServer Faces, os principais representantes dessa categoria de framework Web. Para essa avaliação foi utilizado um conjunto de métricas específicas do modelo de qualidade e a abordagem GQM (Goal-Question-Metric) proposta pelo framework de avaliação de reusabilidade posteriormente apresentado no texto.
6
  • IRIA CALINE SARAIVA COSME
  • UTILIZANDO MAPAS DE CONECTIVIDADE FUZZY NO DESENVOLVIMENTO DE ALGORITMOS REPARADORES DE IMAGENS BINÁRIAS 3D
  • Orientador : BRUNO MOTTA DE CARVALHO
  • MEMBROS DA BANCA :
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • BRUNO MOTTA DE CARVALHO
  • LUIZ MARCOS GARCIA GONCALVES
  • MARCELO FERREIRA SIQUEIRA
  • Data: 04/08/2008

  • Mostrar Resumo
  • Uma imagem binária 3D é considerada bem-composta se, e somente se, a união das faces compartilhadas pelos voxels do foreground e do background da referida imagem é uma superfície em R3. Imagens bem-compostas se beneficiam de propriedades topológicas desejáveis, as quais nos permitem simplificar e otimizar algoritmos amplamente usados na computação gráfica, visão computacional e processamento de imagens. Estas vantagens têm motivado o desenvolvimento de algoritmos para reparar imagens bi e tridimensionais que não sejam bem-compostas. Estes algoritmos são conhecidos como algoritmos reparadores. Nessa dissertação, propomos dois algoritmos reparadores, um randomizado e um determinístico. Ambos são capazes de fazer reparos topológicos em imagens binárias 3D, produzindo imagens bem-compostas similares às imagens originais. A idéia fundamental por trás de ambos algoritmos é mudar iterativamente a cor atribuída de alguns pontos da imagem de entrada de 0 (background) para 1 (foreground) até a imagem se tornar bem-composta. Os pontos cujas cores são mudadas pelos algoritmos são escolhidos de acordo com seus valores no mapa de conectividade fuzzy, resultante do processo de segmentação da imagem. O uso do mapa de conectividade fuzzy garante que um subconjunto dos pontos escolhidos pelo algoritmo em qualquer iteração seja um com a menor afinidade com o background dentre todas as escolhas possíveis.

  • Mostrar Abstract
  • Uma imagem binária 3D é considerada bem-composta se, e somente se, a união das faces compartilhadas pelos voxels do foreground e do background da referida imagem é uma superfície em R3. Imagens bem-compostas se beneficiam de propriedades topológicas desejáveis, as quais nos permitem simplificar e otimizar algoritmos amplamente usados na computação gráfica, visão computacional e processamento de imagens. Estas vantagens têm motivado o desenvolvimento de algoritmos para reparar imagens bi e tridimensionais que não sejam bem-compostas. Estes algoritmos são conhecidos como algoritmos reparadores. Nessa dissertação, propomos dois algoritmos reparadores, um randomizado e um determinístico. Ambos são capazes de fazer reparos topológicos em imagens binárias 3D, produzindo imagens bem-compostas similares às imagens originais. A idéia fundamental por trás de ambos algoritmos é mudar iterativamente a cor atribuída de alguns pontos da imagem de entrada de 0 (background) para 1 (foreground) até a imagem se tornar bem-composta. Os pontos cujas cores são mudadas pelos algoritmos são escolhidos de acordo com seus valores no mapa de conectividade fuzzy, resultante do processo de segmentação da imagem. O uso do mapa de conectividade fuzzy garante que um subconjunto dos pontos escolhidos pelo algoritmo em qualquer iteração seja um com a menor afinidade com o background dentre todas as escolhas possíveis.
7
  • NATAL HENRIQUE CORDEIRO
  • Construção de Mosaicos Georreferenciados Usando Imagens Aéreas de Pequeno Formato.
  • Orientador : BRUNO MOTTA DE CARVALHO
  • MEMBROS DA BANCA :
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • BRUNO MOTTA DE CARVALHO
  • LUIZ MARCOS GARCIA GONCALVES
  • AQUILES MEDEIROS FILGUEIRA BURLAMAQUI
  • MARCELO FERREIRA SIQUEIRA
  • Data: 04/08/2008

  • Mostrar Resumo
  • Propomos um sistema computacional para construir mosaicos georreferenciados, baseado em técnicas da estéreo-fotogrametria, usando imagens aéreas de pequeno formato(SFAI) não controladas. As imagens são obtidas com uma câmera digital comum acoplada a um helicóptero aeromodelo. Técnicas para corrigir distorções são aplicadas e a orientação relativa dos modelos é realizada baseada na geometria perpectiva. Pontos reais do terreno são usados para executar a orientação absoluta, definindo uma escala e um sistema de coordenadas que relacione medidas da imagem com o terreno. O mosaico será manipulado em um SIG, que esta sendo desenvolvido baseado, fornecendo informação útil aos usuários.

  • Mostrar Abstract
  • Propomos um sistema computacional para construir mosaicos georreferenciados, baseado em técnicas da estéreo-fotogrametria, usando imagens aéreas de pequeno formato(SFAI) não controladas. As imagens são obtidas com uma câmera digital comum acoplada a um helicóptero aeromodelo. Técnicas para corrigir distorções são aplicadas e a orientação relativa dos modelos é realizada baseada na geometria perpectiva. Pontos reais do terreno são usados para executar a orientação absoluta, definindo uma escala e um sistema de coordenadas que relacione medidas da imagem com o terreno. O mosaico será manipulado em um SIG, que esta sendo desenvolvido baseado, fornecendo informação útil aos usuários.
8
  • FABIOLA MARIZ DA FONSECA
  • Uma Arquitetura de Referência para o Desenvolvimento de Sistemas Interativos Multiplataformas.
  • Orientador : JAIR CAVALCANTI LEITE
  • MEMBROS DA BANCA :
  • JAIR CAVALCANTI LEITE
  • MARIA ELIZABETH SUCUPIRA FURTADO
  • PAULO DE FIGUEIREDO PIRES
  • Data: 08/08/2008

  • Mostrar Resumo
  • É cada vez mais comum o uso de um mesmo sistema computacional utilizando diferentes dispositivos – computadores pessoais, telefones celulares e outros – e plataformas de software – sistemas de interfaces de usuário gráficas, sistemas Web e outros. Dependendo das tecnologias envolvidas, arquiteturas de software distintas podem ser empregadas. Por exemplo, em sistemas Web, utiliza-se uma arquitetura cliente-servidor – normalmente estendida em três camadas. Em sistemas com interfaces gráficas, é mais comum arquiteturas com o estilo MVC. A utilização de arquiteturas com diferentes estilos dificulta a interoperabilidade de sistemas com múltiplas plataformas. Um outro agravante é que muitas vezes, as interfaces de usuário em cada um dos dispositivos possuem estrutura, aparência e comportamentos diferentes em cada dispositivo, o que leva a uma baixa usabilidade. Por fim, as interfaces de usuário específicas para cada um dos dispositivos envolvidos, com características e tecnologias distintas é um trabalho que precisa ser realizado individualmente e não permite escalabilidade. Esse trabalho procura resolver alguns destes problemas apresentando um estilo de arquitetura independente de plataforma e que possibilita que a interface de usuário possa ser construída a partir de uma especificação abstrata. Esta solução visa oferecer uma maior interoperabilidade entre as diferentes plataformas, uma maior consistência entre as interfaces de usuário e maior flexibilidade e escalabilidade para a incorporação de novos dispositivos. Como parte desse trabalho inclui-se também a preservação dos aspectos de usabilidade nas diferentes plataformas e dispositivos através de especificações de interfaces de usuários usando a linguagem IMML. Portanto, a solução arquitetural proposta incorpora características que satisfaz os requisitos de portabilidade, interoperabilidade e usabilidade unindo técnicas utilizadas na engenharia de software e na IHC.

  • Mostrar Abstract
  • É cada vez mais comum o uso de um mesmo sistema computacional utilizando diferentes dispositivos – computadores pessoais, telefones celulares e outros – e plataformas de software – sistemas de interfaces de usuário gráficas, sistemas Web e outros. Dependendo das tecnologias envolvidas, arquiteturas de software distintas podem ser empregadas. Por exemplo, em sistemas Web, utiliza-se uma arquitetura cliente-servidor – normalmente estendida em três camadas. Em sistemas com interfaces gráficas, é mais comum arquiteturas com o estilo MVC. A utilização de arquiteturas com diferentes estilos dificulta a interoperabilidade de sistemas com múltiplas plataformas. Um outro agravante é que muitas vezes, as interfaces de usuário em cada um dos dispositivos possuem estrutura, aparência e comportamentos diferentes em cada dispositivo, o que leva a uma baixa usabilidade. Por fim, as interfaces de usuário específicas para cada um dos dispositivos envolvidos, com características e tecnologias distintas é um trabalho que precisa ser realizado individualmente e não permite escalabilidade. Esse trabalho procura resolver alguns destes problemas apresentando um estilo de arquitetura independente de plataforma e que possibilita que a interface de usuário possa ser construída a partir de uma especificação abstrata. Esta solução visa oferecer uma maior interoperabilidade entre as diferentes plataformas, uma maior consistência entre as interfaces de usuário e maior flexibilidade e escalabilidade para a incorporação de novos dispositivos. Como parte desse trabalho inclui-se também a preservação dos aspectos de usabilidade nas diferentes plataformas e dispositivos através de especificações de interfaces de usuários usando a linguagem IMML. Portanto, a solução arquitetural proposta incorpora características que satisfaz os requisitos de portabilidade, interoperabilidade e usabilidade unindo técnicas utilizadas na engenharia de software e na IHC.
9
  • JOSE REGINALDO DE SOUSA MENDES JUNIOR
  • WebFlowAH: Um Ambiente para Especificação e Execução ad-hoc de Processos de Negócio Baseados em Serviços Web
  • Orientador : PAULO DE FIGUEIREDO PIRES
  • MEMBROS DA BANCA :
  • FLAVIA COIMBRA DELICATO
  • MARTA LIMA DE QUEIROZ MATTOSO
  • PAULO DE FIGUEIREDO PIRES
  • THAIS VASCONCELOS BATISTA
  • Data: 29/08/2008

  • Mostrar Resumo
  • RESUMO Este trabalho propõe o WebFlowAH, um ambiente para especificações e execução ad-hoc de processos de negócios orientados a objetivos e baseado na utilização de ontologias de domínio comuns. O termo ad-hoc advém do fato do WebFlowAH permitir que especificações de processos sejam elaboradas de forma não sistematizada e/ou planejada por analistas de processos, de modo semelhante ao que ocorre na elaboração de consultas nos sistemas de gerência de banco de dados atuais. Ou seja, o analista de processo não necessita saber a priori todos os detalhes necessários a implementação do processo de negócio para elaborar a sua especificação. O WebFlowAH propõe o uso de uma ontologia comum modelada tanto para facilitar a especificação orientada a objetivos de processos de negócio, quanto para permitir a descoberta, seleção e composição automatizadas de serviços Web. O processo de síntese do WebFlowAH, além de permitir a construção completa de especificações de processos de negócio a partir de objetivos de alto nível, permite ainda que o projetista intera com o sistema durante a construção da especificação de objetivos. Esse mecanismo de interação funciona como um auxilio ao projetista, indicando caminhos possíveis para a realização da especificação, tendo como base as informações disponíveis no sistema e solicitando informações adicionais visando a completude da especificação. O processo de síntese explora ainda a existência de serviços Web que forneçam funcionalidades equivalentes [7] de forma a gerar especificações de processos que incluam alternativas de execução visando aumentar a robustez da especificaçãogerada.

  • Mostrar Abstract
  • RESUMO Este trabalho propõe o WebFlowAH, um ambiente para especificações e execução ad-hoc de processos de negócios orientados a objetivos e baseado na utilização de ontologias de domínio comuns. O termo ad-hoc advém do fato do WebFlowAH permitir que especificações de processos sejam elaboradas de forma não sistematizada e/ou planejada por analistas de processos, de modo semelhante ao que ocorre na elaboração de consultas nos sistemas de gerência de banco de dados atuais. Ou seja, o analista de processo não necessita saber a priori todos os detalhes necessários a implementação do processo de negócio para elaborar a sua especificação. O WebFlowAH propõe o uso de uma ontologia comum modelada tanto para facilitar a especificação orientada a objetivos de processos de negócio, quanto para permitir a descoberta, seleção e composição automatizadas de serviços Web. O processo de síntese do WebFlowAH, além de permitir a construção completa de especificações de processos de negócio a partir de objetivos de alto nível, permite ainda que o projetista intera com o sistema durante a construção da especificação de objetivos. Esse mecanismo de interação funciona como um auxilio ao projetista, indicando caminhos possíveis para a realização da especificação, tendo como base as informações disponíveis no sistema e solicitando informações adicionais visando a completude da especificação. O processo de síntese explora ainda a existência de serviços Web que forneçam funcionalidades equivalentes [7] de forma a gerar especificações de processos que incluam alternativas de execução visando aumentar a robustez da especificaçãogerada.
10
  • DIOGO FAGUNDES DE OLIVEIRA
  • Dilema Acurácia/Diversidade: Um Estudo Empírico no Contexto de Multiclassificadores
  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • MEMBROS DA BANCA :
  • ADRIAO DUARTE DORIA NETO
  • ANNE MAGALY DE PAULA CANUTO
  • IVAN GESTEIRA COSTA FILHO
  • MARCILIO CARLOS PEREIRA DE SOUTO
  • Data: 01/09/2008

  • Mostrar Resumo
  • Sistemas Multiclassificadores, também conhecidos como comitês de classificadores, têm sido amplamente utilizados para resolver os mais variados problemas, pois em geral têm melhores desempenhos que os classificadores base que formam esses sistemas. Para que isso ocorra, porém, é necessário que os classificadores base sejam tão acurados quanto diversos entre si – isso é conhecido como dilema da diversidade-acurácia. Dado a sua importância, alguns trabalhos sobre o estudo do comportamento dos comitês no contexto desse dilema foram propostos. Entretanto, a maioria dos trabalhos estudou tal problema para comitês homogêneos, ou seja, comitês formados apenas por classificadores do mesmo tipo. Sendo assim, motivado por esta limitação, esta dissertação, usando algoritmos genéticos, efetua um estudo mais detalhado sobre o dilema da diversidade-acurácia em comitês heterogêneos.

  • Mostrar Abstract
  • Sistemas Multiclassificadores, também conhecidos como comitês de classificadores, têm sido amplamente utilizados para resolver os mais variados problemas, pois em geral têm melhores desempenhos que os classificadores base que formam esses sistemas. Para que isso ocorra, porém, é necessário que os classificadores base sejam tão acurados quanto diversos entre si – isso é conhecido como dilema da diversidade-acurácia. Dado a sua importância, alguns trabalhos sobre o estudo do comportamento dos comitês no contexto desse dilema foram propostos. Entretanto, a maioria dos trabalhos estudou tal problema para comitês homogêneos, ou seja, comitês formados apenas por classificadores do mesmo tipo. Sendo assim, motivado por esta limitação, esta dissertação, usando algoritmos genéticos, efetua um estudo mais detalhado sobre o dilema da diversidade-acurácia em comitês heterogêneos.
11
  • ANDERSON PAIVA CRUZ
  • LÓGICA BDI FUZZY
  • Orientador : BENJAMIN RENE CALLEJAS BEDREGAL
  • MEMBROS DA BANCA :
  • ANNE MAGALY DE PAULA CANUTO
  • ANTONIO CARLOS DA ROCHA COSTA
  • BENJAMIN RENE CALLEJAS BEDREGAL
  • MARIA DA PAZ NUNES DE MEDEIROS
  • REGIVAN HUGO NUNES SANTIAGO
  • Data: 26/09/2008

  • Mostrar Resumo
  • Com o intuito de entender como a mente humana funciona iniciaram-se estudos sobre cognição nos campos da filosofia e psicologia. Teorias surgiram desses estudos e atualmente esta curiosidade foi estendida a outras áreas tais como ciências e engenharia de computação, no entanto, nestas áreas, o objetivo é sutilmente diferente: entender o funcionamento da mente e aplicá-lo na modelagem de agentes, possibilitando assim a implementação (software ou hardware) de agentes capazes de decidir o plano de execução de suas ações. Em ciências de computação, a sub-área de sistemas multi-agentes tem progredido bastante utilizando trabalhos em inteligência artificial, lógica computacional, sistemas distribuídos, teoria dos jogos e aproveitando também teorias provenientes da própria filosofia e psicologia. Desta forma, alguns pesquisadores já vêem o paradigma de programação orientado a agentes como a melhor solução para a implementação dos softwares mais complexos: cujos sistemas são dinâmicos, não-determinísticos e que podem ter de operar com dados faltosos sobre ambientes também dinâmicos e não-determinísticos. Este trabalho busca a apresentação de uma extensão da formalização lógica de um modelo de arquitetura de agentes cognitivos, chamado BDI, na qual o agente é capaz de deliberar suas ações baseando-se em suas crenças, desejos e intenções. A formalização de tal modelo é conhecida pelo nome de lógica BDI (belief-desire-intention), uma lógica modal com três relações de modalidade a qual, neste trabalho, será apresentado dois planos para transformá-la numa lógica modal fuzzy onde as relações de acessibilidade e as fórmulas (modais-fuzzy) poderão ter valorações dentro do intervalo [0,1].

  • Mostrar Abstract
  • Com o intuito de entender como a mente humana funciona iniciaram-se estudos sobre cognição nos campos da filosofia e psicologia. Teorias surgiram desses estudos e atualmente esta curiosidade foi estendida a outras áreas tais como ciências e engenharia de computação, no entanto, nestas áreas, o objetivo é sutilmente diferente: entender o funcionamento da mente e aplicá-lo na modelagem de agentes, possibilitando assim a implementação (software ou hardware) de agentes capazes de decidir o plano de execução de suas ações. Em ciências de computação, a sub-área de sistemas multi-agentes tem progredido bastante utilizando trabalhos em inteligência artificial, lógica computacional, sistemas distribuídos, teoria dos jogos e aproveitando também teorias provenientes da própria filosofia e psicologia. Desta forma, alguns pesquisadores já vêem o paradigma de programação orientado a agentes como a melhor solução para a implementação dos softwares mais complexos: cujos sistemas são dinâmicos, não-determinísticos e que podem ter de operar com dados faltosos sobre ambientes também dinâmicos e não-determinísticos. Este trabalho busca a apresentação de uma extensão da formalização lógica de um modelo de arquitetura de agentes cognitivos, chamado BDI, na qual o agente é capaz de deliberar suas ações baseando-se em suas crenças, desejos e intenções. A formalização de tal modelo é conhecida pelo nome de lógica BDI (belief-desire-intention), uma lógica modal com três relações de modalidade a qual, neste trabalho, será apresentado dois planos para transformá-la numa lógica modal fuzzy onde as relações de acessibilidade e as fórmulas (modais-fuzzy) poderão ter valorações dentro do intervalo [0,1].
12
  • ISANIO LOPES ARAUJO SANTOS
  • "Uma Abordagem baseada em Aspectos e Composição Dinâmica para a Construção de Aplicações Adaptativas Cientes ao Contexto"
  • Orientador : FLAVIA COIMBRA DELICATO
  • MEMBROS DA BANCA :
  • FLAVIA COIMBRA DELICATO
  • LUCI PIRMEZ
  • MARTIN ALEJANDRO MUSICANTE
  • PAULO DE FIGUEIREDO PIRES
  • THAIS VASCONCELOS BATISTA
  • Data: 10/11/2008

  • Mostrar Resumo
  • Aplicações para a computação ubíqua operam em ambientes onde a disponibilidade de recursos e serviços mudam significativamente durante a sua operação. Tal característica demanda que aplicações sejam adaptativas e cientes de seu contexto de execução. Visando atender esses requisitos, essa dissertação propõe o PACCA (Projeto de Aplicações Ciente ao Contexto e Adaptativas), um arcabouço para desenvolvimento e execução de aplicações adaptativas cientes de contexto. O paradigma de orientação a aspectos é usado no PACCA para modularizar o comportamento adaptativo e dissociá-lo da lógica da aplicação. A orientação a aspectos aliada a composição dinâmica de software oferecem suporte para adaptação ciente ao contexto, a qual é guiada por políticas previamente definidas.

  • Mostrar Abstract
  • Aplicações para a computação ubíqua operam em ambientes onde a disponibilidade de recursos e serviços mudam significativamente durante a sua operação. Tal característica demanda que aplicações sejam adaptativas e cientes de seu contexto de execução. Visando atender esses requisitos, essa dissertação propõe o PACCA (Projeto de Aplicações Ciente ao Contexto e Adaptativas), um arcabouço para desenvolvimento e execução de aplicações adaptativas cientes de contexto. O paradigma de orientação a aspectos é usado no PACCA para modularizar o comportamento adaptativo e dissociá-lo da lógica da aplicação. A orientação a aspectos aliada a composição dinâmica de software oferecem suporte para adaptação ciente ao contexto, a qual é guiada por políticas previamente definidas.
13
  • DANIEL SABINO AMORIM DE ARAUJO
  • Algoritmos de Agrupamento Aplicados a Dados de Expressão Gênica de Câncer: Um Estudo Comparativo
  • Orientador : MARCILIO CARLOS PEREIRA DE SOUTO
  • MEMBROS DA BANCA :
  • ANNE MAGALY DE PAULA CANUTO
  • MARCILIO CARLOS PEREIRA DE SOUTO
  • RICARDO BASTOS CAVALCANTE PRUDÊNCIO
  • Data: 11/11/2008

  • Mostrar Resumo
  • O uso de técnicas de agrupamento na descoberta de subtipos de câncer tem atraído grande >> atenção da comunidade científica. Enquanto bioinformatas propõem novas técnicas de agrupamento que levam em consideração características dos dados de expressão gênica, a comunidade médica prefere utilizar as técnicas "classicas" de agrupamento. De fato, não existem trabalhos na literatura que realizam uma avaliação em grande escala de técnicas de agrupamento nesse contexto. Diante disso, este trabalho apresenta o primeiro estudo em grande escala de sete técnicas de agrupamento e quatro medidas de proximidade para análise de 35 conjuntos de dados de expressão gênica. Mais especificamente, os resultados mostram que a mistura finita de gaussianas, seguida de perto pelo k-means, apresentam os melhores resultados em termos de recuperação da estrutura natural dos dados. Esses métodos também apresentam a menor diferença entre o número real de classes e o número de grupos presente na melhor partição.

  • Mostrar Abstract
  • O uso de técnicas de agrupamento na descoberta de subtipos de câncer tem atraído grande >> atenção da comunidade científica. Enquanto bioinformatas propõem novas técnicas de agrupamento que levam em consideração características dos dados de expressão gênica, a comunidade médica prefere utilizar as técnicas "classicas" de agrupamento. De fato, não existem trabalhos na literatura que realizam uma avaliação em grande escala de técnicas de agrupamento nesse contexto. Diante disso, este trabalho apresenta o primeiro estudo em grande escala de sete técnicas de agrupamento e quatro medidas de proximidade para análise de 35 conjuntos de dados de expressão gênica. Mais especificamente, os resultados mostram que a mistura finita de gaussianas, seguida de perto pelo k-means, apresentam os melhores resultados em termos de recuperação da estrutura natural dos dados. Esses métodos também apresentam a menor diferença entre o número real de classes e o número de grupos presente na melhor partição.
2007
Dissertações
1
  • CLAUDIA FERNANDA OLIVEIRA KIERMES TAVARES
  • PROVA AUTOMATICA DE SATISFATIBILIDADE MÓDULO TEORIA APLICADA AO MÉTODO B
  • MEMBROS DA BANCA :
  • DAVID BORIS PAUL DEHARBE
  • JORGE CÉSAR ABRANTES DE FIGUEIREDO
  • MARCEL VINICIUS MEDEIROS OLIVEIRA
  • Data: 27/07/2007

  • Mostrar Resumo
  • Este trabalho apresenta uma extensão do provador haRVey destinada à verificação de obrigações de prova originadas de acordo com o método B. O método B de desenvolvimento de software abrange as fases de especificação, projeto e implementação do ciclo de vida do software. No contexto da verificação, destacam-se as ferramentas de prova Prioni, Z/EVES e Atelier-B/Click’n’Prove. Elas descrevem formalismos com suporte à checagem satisfatibilidade de fórmulas da teoria axiomática dos conjuntos, ou seja, podem ser aplicadas ao método B. A checagem de SMT consiste na checagem de satisfatibilidade de fórmulas da lógica de primeira-ordem livre de quantificadores dada uma teoria decidível. A abordagem de checagem de SMT implementada pelo provador automático de teoremas haRVey é apresentada, adotando-se a teoria dos vetores que não permite expressar todas as construções necessárias às especificações baseadas em conjuntos. Assim, para estender a checagem de SMT para teorias dos conjuntos destacam-se as teorias dos conjuntos de Zermelo-Frankel (ZFC) e de von Neumann-Bernays-Gödel (NBG). Tendo em vista que a abordagem de checagem de SMT implementada no haRVey requer uma teoria finita e pode ser estendida para as teorias nãodecidíveis, a teoria NBG apresenta-se como uma opção adequada para a expansão da capacidade dedutiva do haRVey à teoria dos conjuntos. Assim, através do mapeamento dos operadores de conjunto fornecidos pela linguagem B a classes da teoria NBG, obtem-se uma abordagem alternativa para a checagem de SMT aplicada ao método B.

  • Mostrar Abstract
  • Este trabalho apresenta uma extensão do provador haRVey destinada à verificação de obrigações de prova originadas de acordo com o método B. O método B de desenvolvimento de software abrange as fases de especificação, projeto e implementação do ciclo de vida do software. No contexto da verificação, destacam-se as ferramentas de prova Prioni, Z/EVES e Atelier-B/Click’n’Prove. Elas descrevem formalismos com suporte à checagem satisfatibilidade de fórmulas da teoria axiomática dos conjuntos, ou seja, podem ser aplicadas ao método B. A checagem de SMT consiste na checagem de satisfatibilidade de fórmulas da lógica de primeira-ordem livre de quantificadores dada uma teoria decidível. A abordagem de checagem de SMT implementada pelo provador automático de teoremas haRVey é apresentada, adotando-se a teoria dos vetores que não permite expressar todas as construções necessárias às especificações baseadas em conjuntos. Assim, para estender a checagem de SMT para teorias dos conjuntos destacam-se as teorias dos conjuntos de Zermelo-Frankel (ZFC) e de von Neumann-Bernays-Gödel (NBG). Tendo em vista que a abordagem de checagem de SMT implementada no haRVey requer uma teoria finita e pode ser estendida para as teorias nãodecidíveis, a teoria NBG apresenta-se como uma opção adequada para a expansão da capacidade dedutiva do haRVey à teoria dos conjuntos. Assim, através do mapeamento dos operadores de conjunto fornecidos pela linguagem B a classes da teoria NBG, obtem-se uma abordagem alternativa para a checagem de SMT aplicada ao método B.
2
  • MILANO GADELHA CARVALHO
  • “IMPLEMENTAÇÃO HARDWARE/SOFTWARE DA ESTIMAÇÃO DE MOVIMENTO SEGUNDO O PADRÃO H.264”
  • Orientador : IVAN SARAIVA SILVA
  • MEMBROS DA BANCA :
  • BRUNO MOTTA DE CARVALHO
  • IVAN SARAIVA SILVA
  • JOSÉ ANTONIO GOMES DE LIMA
  • Data: 28/09/2007

  • Mostrar Resumo
  • A estimação de movimento é a maior responsável pela redução na quantidade de dados na codificação de um vídeo digital, é também a etapa que exige maior esforço computacional. O padrão H.264 é o mais novo padrão de compressão de vídeo e foi desenvolvido com o objetivo de dobrar a taxa de compressão em relação aos demais padrões existentes até então. Esse padrão foi desenvolvido pelo JVT, que foi formado a partir de uma união entre os especialistas do VCEG da ITU-T e do MPEG da ISO/IEC. O padrão H.264 apresenta inovações que aumentam a eficiência da estimação de movimento, como o uso de blocos de tamanho variável, precisão de ¼ de pixel e a utilização de múltiplos quadros de referência. A proposta deste trabalho é a de definir uma arquitetura em hardware/software que realize a estimação de movimento do padrão H.264, utilizando o algoritmo da busca completa, blocos de tamanhos variáveis e modo de decisão. Para implementação este trabalho considera a utilização de dispositivos reconfiguráveis, soft-processadores e ferramentas de desenvolvimento de sistemas embarcados tais como Quartus II, SOPC Builder, Nios II e ModelSim.

  • Mostrar Abstract
  • A estimação de movimento é a maior responsável pela redução na quantidade de dados na codificação de um vídeo digital, é também a etapa que exige maior esforço computacional. O padrão H.264 é o mais novo padrão de compressão de vídeo e foi desenvolvido com o objetivo de dobrar a taxa de compressão em relação aos demais padrões existentes até então. Esse padrão foi desenvolvido pelo JVT, que foi formado a partir de uma união entre os especialistas do VCEG da ITU-T e do MPEG da ISO/IEC. O padrão H.264 apresenta inovações que aumentam a eficiência da estimação de movimento, como o uso de blocos de tamanho variável, precisão de ¼ de pixel e a utilização de múltiplos quadros de referência. A proposta deste trabalho é a de definir uma arquitetura em hardware/software que realize a estimação de movimento do padrão H.264, utilizando o algoritmo da busca completa, blocos de tamanhos variáveis e modo de decisão. Para implementação este trabalho considera a utilização de dispositivos reconfiguráveis, soft-processadores e ferramentas de desenvolvimento de sistemas embarcados tais como Quartus II, SOPC Builder, Nios II e ModelSim.
3
  • DIEGO CAMINHA BARBOSA DE OLIVEIRA
  • Deciding Difference Logic in a Nelson-Oppen Combination Framework
  • MEMBROS DA BANCA :
  • DAVID BORIS PAUL DEHARBE
  • MARCEL VINICIUS MEDEIROS OLIVEIRA
  • STEPHAN MERZ
  • Data: 07/11/2007

  • Mostrar Resumo
  • O método de combinação de Nelson-Oppen permite que vários procedimentos de decisão, cada um projetado para uma teoria específica, possam ser combinados para inferir sobre teorias mais abrangentes, através do princípio de propagação de igualdades. Provadores de teorema baseados neste modelo são beneficiados por sua característica modular e podem evoluir mais facilmente, incrementalmente. Difference logic é uma subteoria da aritmética linear. Ela é formada por constraints do tipo x - y ≤ c, onde x e y são variáveis e c é uma constante. Difference logic é muito comum em vários problemas, como circuitos digitais, agendamento, sistemas temporais, etc. e se apresenta predominante em vários outros casos. Difference logic ainda se caracteriza por ser modelada usando teoria dos grafos. Isto permite que vários algoritmos eficientes e conhecidos da teoria de grafos possam ser utilizados. Um procedimento de decisão para difference logic é capaz de induzir sobre milhares de constraints. Um procedimento de decisão para a teoria de difference logic tem como objetivo principal informar se um conjunto de constraints de difference logic é satisfatível (as variáveis podem assumir valores que tornam o conjunto consistente) ou não. Além disso, para funcionar em um modelo de combinação baseado em Nelson-Oppen, o procedimento de decisão precisa ter outras funcionalidades, como geração de igualdade de variáveis, prova de inconsistência, premissas, etc. Este trabalho apresenta um procedimento de decisão para a teoria de difference logic dentro de uma arquitetura baseada no método de combinação de Nelson-Oppen. O trabalho foi realizado integrando-se ao provador haRVey, de onde foi possível observar o seu funcionamento. Detalhes de implementação e testes experimentais são relatados.

  • Mostrar Abstract
  • O método de combinação de Nelson-Oppen permite que vários procedimentos de decisão, cada um projetado para uma teoria específica, possam ser combinados para inferir sobre teorias mais abrangentes, através do princípio de propagação de igualdades. Provadores de teorema baseados neste modelo são beneficiados por sua característica modular e podem evoluir mais facilmente, incrementalmente. Difference logic é uma subteoria da aritmética linear. Ela é formada por constraints do tipo x - y ≤ c, onde x e y são variáveis e c é uma constante. Difference logic é muito comum em vários problemas, como circuitos digitais, agendamento, sistemas temporais, etc. e se apresenta predominante em vários outros casos. Difference logic ainda se caracteriza por ser modelada usando teoria dos grafos. Isto permite que vários algoritmos eficientes e conhecidos da teoria de grafos possam ser utilizados. Um procedimento de decisão para difference logic é capaz de induzir sobre milhares de constraints. Um procedimento de decisão para a teoria de difference logic tem como objetivo principal informar se um conjunto de constraints de difference logic é satisfatível (as variáveis podem assumir valores que tornam o conjunto consistente) ou não. Além disso, para funcionar em um modelo de combinação baseado em Nelson-Oppen, o procedimento de decisão precisa ter outras funcionalidades, como geração de igualdade de variáveis, prova de inconsistência, premissas, etc. Este trabalho apresenta um procedimento de decisão para a teoria de difference logic dentro de uma arquitetura baseada no método de combinação de Nelson-Oppen. O trabalho foi realizado integrando-se ao provador haRVey, de onde foi possível observar o seu funcionamento. Detalhes de implementação e testes experimentais são relatados.
2006
Dissertações
1
  • NELIO ALESSANDRO AZEVEDO CACHO
  • Um Middleware Reflexivo e Orientado a Aspectos: Arquitetura e Implementações
  • MEMBROS DA BANCA :
  • FLAVIA COIMBRA DELICATO
  • NOEMI DE LA ROCQUE RODRIGUEZ
  • THAIS VASCONCELOS BATISTA
  • Data: 15/12/2006

  • Mostrar Resumo
  • Plataformas de middleware têm sido utilizadas em diversos ambientes computacionais e por diferentes classes de aplicações com requisitos variados. Para atender a cada cenário específico, é necessário conferir às plataformas de middleware capacidade de adaptação da sua infra-estrutura conforme as necessidades das aplicações e do ambiente computacional. Atualmente, uma nova geração de plataformas de middleware tem explorado o conceito de reflexão computacional para possibilitar adaptação dinâmica. No entanto, esta nova geração de plataformas não endereçam os problemas introduzidos pela presença dos conceitos transversais entrelaçados com os conceitos básicos, que reduzem o potencial reuso do middleware em diferentes cenários e, por conseqüência, limitam a capacidade de adaptação. No presente trabalho, combinamos reflexão computacional com programação orientada a aspectos para permitir a separação dos conceitos transversais e assim melhorar o reuso e capacidade de adaptação das plataformas de middleware. Esta combinação é usada na especificação de uma nova estrutura para a arquitetura do Open-ORB. Tal arquitetura é implementada usando duas estratégias distintas: (i) uma estratégia interpretada utilizando a linguagem Lua em combinação com AspectLua; (ii) uma estratégia compilada que emprega a linguagem Java em combinação com AspectJ. De forma a avaliar os benefícios de cada estratégia, este trabalho apresenta uma série de comparações que traduzem as diferenças em termos de modularidade, memória utilizada e tempo de execução de cada uma das estratégias.

  • Mostrar Abstract
  • Plataformas de middleware têm sido utilizadas em diversos ambientes computacionais e por diferentes classes de aplicações com requisitos variados. Para atender a cada cenário específico, é necessário conferir às plataformas de middleware capacidade de adaptação da sua infra-estrutura conforme as necessidades das aplicações e do ambiente computacional. Atualmente, uma nova geração de plataformas de middleware tem explorado o conceito de reflexão computacional para possibilitar adaptação dinâmica. No entanto, esta nova geração de plataformas não endereçam os problemas introduzidos pela presença dos conceitos transversais entrelaçados com os conceitos básicos, que reduzem o potencial reuso do middleware em diferentes cenários e, por conseqüência, limitam a capacidade de adaptação. No presente trabalho, combinamos reflexão computacional com programação orientada a aspectos para permitir a separação dos conceitos transversais e assim melhorar o reuso e capacidade de adaptação das plataformas de middleware. Esta combinação é usada na especificação de uma nova estrutura para a arquitetura do Open-ORB. Tal arquitetura é implementada usando duas estratégias distintas: (i) uma estratégia interpretada utilizando a linguagem Lua em combinação com AspectLua; (ii) uma estratégia compilada que emprega a linguagem Java em combinação com AspectJ. De forma a avaliar os benefícios de cada estratégia, este trabalho apresenta uma série de comparações que traduzem as diferenças em termos de modularidade, memória utilizada e tempo de execução de cada uma das estratégias.
2003
Dissertações
1
  • JOSÉ NEILTON DIAS DE MORAIS
  • Seleção Dinâmica de Componentes CORBA

  • Orientador : THAIS VASCONCELOS BATISTA
  • MEMBROS DA BANCA :
  • THAIS VASCONCELOS BATISTA
  • GLEDSON ELIAS DA SILVEIRA
  • RAIMUNDO JOSÉ DE ARAÚJO MACÊDO
  • Data: 28/04/2003

  • Mostrar Resumo
  • A escolha dos componentes que integram uma aplicação é uma etapa fundamental na construção de software baseado em componentes. A possibilidade de selecionar componentes em tempo de execução confere flexibilidade além de facilitar a reutilização de componentes. Neste trabalho apresentamos e desenvolvemos mecanismos de seleção dinâmica de componentes para um ambiente de configuração e reconfiguração de aplicações distribuídas baseadas em componentes CORBA – o ambiente LuaSpace. Um dos propósitos dos mecanismos é facilitar o reuso possibilitando ao programador expressar facilmente os requisitos, propriedades funcionais e não funcionais dos componentes que deseja encontrar, usando a mesma linguagem utilizada para configurar aplicações. Outro propósito é promover a reconfiguração dinâmica uma vez que a seleção de componentes para compor uma aplicação é realizada em tempo de execução. Este trabalho descreve também como os mecanismos realizam a seleção dinâmica de objetos explorando o suporte dos serviços de Nomes e de Trading, bem como de outros repositórios de meta-informação sobre os objetos oferecidos pelo padrão CORBA. 


  • Mostrar Abstract
  • Selecting software components that will integrate an application is a fundamental step when building component-based software. The possibility of selecting these components at run time brings flexibility and also promotes reusability. This paper presents and implements mechanisms for dynamic selection of components within an environment for configuration and reconfiguration of distributed systems based on CORBA – the LuaSpace environment. One purpose of the mechanisms is to promote reuse, the programmer is allowed to easily express function and non-functional properties of the components desired, using the same language used to configure the application. Another purpose is to support dynamic reconfiguration, since actual component selection is accomplished at runtime. This work also describes how dynamic selection is achieved exploring the Naming Service and the Trading Service, as well as other meta-information repositories on objects offered by CORBA. 

SIGAA | Superintendência de Tecnologia da Informação - (84) 3342 2210 | Copyright © 2006-2024 - UFRN - sigaa04-producao.info.ufrn.br.sigaa04-producao