Dissertações/Teses

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

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
  • 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.

2
  • CARINE AZEVEDO DANTAS
  • Seleção de atributos baseado em algoritmos de agrupamento para tarefas de classificação

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • 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.

3
  • ADORILSON BEZERRA DE ARAÚJO
  • Estudo Empírico de Análise da Compatibilidade de Aplicações Android com Diferentes Versões da API da Plataforma

  • Orientador : UIRA KULESZA
  • 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

4
  • 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 : ELIZABETH FERREIRA GOUVEA
  • 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.

5
  • RANMSÉS EMANUEL MARTINS BASTOS
  • O Problema do Caixeiro Viajante com Passageiros e Lotação

  • Orientador : MARCO CESAR GOLDBARG
  • 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.

6
  • TAIZA RABELLO MONTENEGRO
  • ExceptionPolicyExpert: Uma Ferramenta para Auxiliar no Desenvolvimento do Tratamento de Exceções 

  • Orientador : ROBERTA DE SOUZA COELHO
  • 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.

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
  • 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.

8
  • JORGE PEREIRA DA SILVA
  • EcoCIT: Uma Plataforma Escalável para Desenvolvimento de Aplicações de IoT

     

     

  • Orientador : 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.

9
  • 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
  • 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%.

10
  • 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
  • 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%.
11
  • TERESA DO CARMO BARRÊTO FERNANDES
  • ExMinerSOF: Minerando InformaçoÞes Excepcionais do StackOverflow 

  • Orientador : ROBERTA DE SOUZA COELHO
  • 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.

     
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
  • 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.

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
  • 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.

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
  • 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.
15
  • FÁBIO FERNANDES PENHA
  • SMiLe: Uma Notação Textual Modular para Modelos de Requisitos IStar

  • Orientador : 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. 

16
  • HUGO HENRIQUE DE OLIVEIRA MESQUITA
  • UMA ABORDAGEM PARA O DESENVOLVIMENTO DE JOGOS DIGITAIS EDUCATIVOS NO ENSINO BÁSICO

  • Orientador : EDUARDO HENRIQUE DA SILVA ARANHA
  • 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.

17
  • GABRIEL ALVES VASILJEVIC MENDES
  • Brain-Computer Interface Games based on Consumer-Grade Electroencephalography Devices: Systematic Review and Controlled Experiments

  • Orientador : LEONARDO CUNHA DE MIRANDA
  • 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.

18
  • JEAN GLEISON DE SANTANA SILVA
  • Algoritmos de Solução para o Problema do Caixeiro Viajante com Passageiros e Quota

  • Orientador : MARCO CESAR GOLDBARG
  • 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.

     

     

19
  • 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
  • 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.

20
  • LUIZ FERNANDO VIRGINIO DA SILVA
  • Extraindo Dados de Tráfego a partir de Vídeos em Tempo Real

  • Orientador : BRUNO MOTTA DE CARVALHO
  • 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.

21
  • ZAILTON SACHAS AMORIM CALHEIROS
  • O Problema do Caixeiro Viajante com Passageiros

  • Orientador : MARCO CESAR GOLDBARG
  • 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.

     

     

     

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
  • 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.
Teses
1
  • DANIEL ALENCAR DA COSTA
  • Understanding the Delivery Delays of Addressed Issues in Large Software Projects

  • Orientador : ROBERTA DE SOUZA COELHO
  • 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). 

2
  • DEMÓSTENES SANTOS DE SENA
  • Uma Abordagem de Apoio à Extração da Política de Tratamento de Exceções

  • Orientador : ROBERTA DE SOUZA COELHO
  • 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.

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
  • 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.

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
  • 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.
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
  • 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.

2
  • 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
  • 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.

3
  • 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
  • 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.

4
  • HUDSON GEOVANE DE MEDEIROS
  • Investigações sobre Técnicas de Arquivamento para Otimizadores Multiobjetivo

  • Orientador : ELIZABETH FERREIRA GOUVEA
  • 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.

5
  • GUILHERME FERNANDES DE ARAUJO
  • Algoritmos Meta-heurísticos Para a Solução do Problema do Caixeiro Viajante com Caronas Múltiplas

     

  • Orientador : MARCO CESAR GOLDBARG
  • 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.

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
  • 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.

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
  • 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.

8
  • MÁRIO ANDRADE VIEIRA DE MELO NETO
  • Uma Plataforma Adaptável para Localização em Ambientes Internos 

  • Orientador : GIBEON SOARES DE AQUINO JUNIOR
  • 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. 

9
  • JOILSON VIDAL ABRANTES
  • Especificação e Monitoramento Dinâmico da Política de Tratamento de Exceções

  • Orientador : ROBERTA DE SOUZA COELHO
  • 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.

10
  • FABIO DE SOUSA LEAL
  • SLA-Based Guidelines for Database Transitioning 

  • Orientador : MARTIN ALEJANDRO MUSICANTE
  • 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. 

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
  • 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.

12
  • FLADSON THIAGO OLIVEIRA GOMES
  • Uma Abordagem para Análise de Cobertura de Código em Cenários de Evolução

  • Orientador : UIRA KULESZA
  • 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.

13
  • HULIANE MEDEIROS DA SILVA
  • Otimização de Comitês de Agrupamento Usando o Algoritmo Coral Reefs Optimization

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • 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. 

14
  • PORFÍRIO DANTAS GOMES
  • Um Serviço de Descoberta Ciente de Contexto para Internet das Coisas

  • Orientador : 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.

15
  • VÍTOR ALCÂNTARA DE ALMEIDA
  • WPTrans: Um Assistente para Verificação de Programas em Frama-C.

  • Orientador : DAVID BORIS PAUL DEHARBE
  • 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.

16
  • THOMAS FILIPE DA SILVA DINIZ
  • Self-adaptive Authorisation in Cloud-based Systems

  • Orientador : NELIO ALESSANDRO AZEVEDO CACHO
  • 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.

17
  • ADDSON ARAUJO DA COSTA
  • SALSA - A Simple Automatic Lung Segmentation Algorithm

  • Orientador : BRUNO MOTTA DE CARVALHO
  • 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.

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
  • 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

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
  • 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.

20
  • VALDIGLEIS DA SILVA COSTA
  • Linguagens Lineares Fuzzy

  • Orientador : BENJAMIN RENE CALLEJAS BEDREGAL
  • 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.

21
  • FRANCISCO DIOGO OLIVEIRA DE QUEIROZ
  • Analisando o Tratamento de Exceções em Aplicações Android

  • Orientador : ROBERTA DE SOUZA COELHO
  • 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. 

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
  • 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.

23
  • MURILO REGALADO ROCHA
  • Um ambiente online gamificado para ensino de programação de jogos digitais

  • Orientador : EDUARDO HENRIQUE DA SILVA ARANHA
  • 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.

24
  • PEDRINA CELIA BRASIL
  • Uma Arquitetura Multi-Agente de Suporte ao Processo Educacional Baseado em Jogos Digitais

  • Orientador : EDUARDO HENRIQUE DA SILVA ARANHA
  • 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.

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
  • 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.

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
  • 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.

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
  • 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. 

28
  • FREDERICO NUNES DO PRANTO FILHO
  • ECSFlow: Implementação de um modelo de tratamento de exceção para C#

  • Orientador : NELIO ALESSANDRO AZEVEDO CACHO
  • 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

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
  • 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.

Teses
1
  • MARCELO DAMASCENO DE MELO
  • Verificação de Usuários através de Biometrias canceláveis comportamentais. 

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • 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.
2
  • VALÉRIO GUTEMBERG DE MEDEIROS JUNIOR
  • Método B e a síntese verificada para código de montagem

  • Orientador : DAVID BORIS PAUL DEHARBE
  • 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. 

3
  • ERNESTO CID BRASIL DE MATOS
  • BETA: uma Abordagem de Testes Baseada em B

  • Orientador : ANAMARIA MARTINS MOREIRA
  • 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.

4
  • EVERTON RANIELLY DE SOUSA CAVALCANTE
  • A Formally Founded Framework for Dynamic Software Architectures

     

  • Orientador : THAIS VASCONCELOS BATISTA
  • 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.

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
  • 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.

6
  • MADIEL DE SOUSA CONSERVA FILHO
  • Análise de Livelock para Sistemas Baseados em Componentes

  • Orientador : MARCEL VINICIUS MEDEIROS OLIVEIRA
  • 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.

7
  • HELIDA SALLES SANTOS
  • Uma nova classe de medidas de inclusão difusa

  • Orientador : BENJAMIN RENE CALLEJAS BEDREGAL
  • 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. 

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
  • 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.

2015
Dissertações
1
  • 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
  • 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.

2
  • GUSTAVO NOGUEIRA ALVES
  • Cloud Stratus: Uma plataforma de middleware para desenvolvimento de aplicações em nuvem
  • Orientador : THAIS VASCONCELOS BATISTA
  • 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.

3
  • EDUARDO ALEXANDRE FERREIRA SILVA
  • Uma Linguagem para Descrição de Missões em Sistema-de-Sistemas

  • Orientador : THAIS VASCONCELOS BATISTA
  • 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. 

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
  • 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.

5
  • PRISCILLA SUENE DE SANTANA NOGUEIRA
  • Utilizando comitês de classificadores para predição de rendimento escolar

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • 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.

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
  • 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.

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
  • 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.

8
  • JOSÉ GOMES LOPES FILHO
  • Comitês de Classificadores Neurais - Estratégias para Construção e Emprego

  • Orientador : MARCO CESAR GOLDBARG
  • 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.

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
  • 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. 

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
  • 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.  

11
  • EMMANUELLY MONTEIRO SILVA DE SOUSA LIMA
  • Números Complexos Graduados e Avaliação de Desempenho de Classificadores

  • Orientador : REGIVAN HUGO NUNES SANTIAGO
  • 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.

12
  • CICERO 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
  • 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.

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
  • 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.

14
  • JADSON JOSE DOS SANTOS
  • Avaliação Sistemática de uma Abordagem para Integração de Funcionalidades em Sistemas Web Clonados

  • Orientador : UIRA KULESZA
  • 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.

15
  • HADLEY MAGNO DA COSTA SIQUEIRA
  • Proposta de implementação de um processador multithreading com características de previsibilidade.

  • Orientador : MARCIO EDUARDO KREUTZ
  • 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.

16
  • GUSTAVO SIZÍLIO NERY
  • UM AMBIENTE DE SUPORTE A EXPERIMENTOS CONTROLADOS ESPECIFICADOS EM EXPDSL

  • Orientador : EDUARDO HENRIQUE DA SILVA ARANHA
  • 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.

17
  • JEAN GUERETHES FERNANDES GUEDES
  • Uma Proposta de Solução para Funcionamento Offline em Aplicações Android

  • Orientador : GIBEON SOARES DE AQUINO JUNIOR
  • 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.

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
  • 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.

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
  • 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.

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
  • 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.

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
  • 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.

Teses
1
  • CARLOS ALBERTO NUNES MACHADO
  • Uma Linguagem de Descrição Arquitetural Baseada em uma Arquitetura de Referência para Sistemas Ubíquos

  • Orientador : JAIR CAVALCANTI LEITE
  • 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. 
2
  • MARILIA ARANHA FREIRE
  • Formalização de Experimentos Controlados em Engenharia de Software

  • Orientador : 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.

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
  • 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.

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
  • 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. 

5
  • LILIANE RIBEIRO DA SILVA
  • Uma Plataforma Intervalar para Agrupamentos de Dados

  • Orientador : 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. 

6
  • FELIPE ALVES PEREIRA PINTO
  • An Automated Approach for Performance Deviaton Analysis of Evolving Software Systems

  • Orientador : UIRA KULESZA
  • 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.

7
  • ANDRÉ GUSTAVO DUARTE DE ALMEIDA
  • AdaptMCloud : Uma Estratégia para Adaptação Dinâmica de Aplicações Multi-Cloud

  • Orientador : THAIS VASCONCELOS BATISTA
  • 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. 

8
  • FLAULLES BOONE BERGAMASCHI
  • Primalidade Forte em Ambiente Fuzzy

  • Orientador : REGIVAN HUGO NUNES SANTIAGO
  • 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.

2014
Dissertações
1
  • DENIS FELIPE
  • Algoritmos Científicos

  • Orientador : ELIZABETH FERREIRA GOUVEA
  • 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.

2
  • APARECIDA LOPES DE MEDEIROS
  • IMPLEMENTAÇÃO DA TÉCNICA DE SOFTWARE PIPELINING NA REDE EM CHIP IPNOSYS

  • Orientador : MARCIO EDUARDO KREUTZ
  • 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.

3
  • 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
  • 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.

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
  • 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.

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
  • 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.

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
  • 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.

7
  • 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
  • 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.

8
  • 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
  • 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.

9
  • ROMEU FERREIRA DE OLIVEIRA
  • Um Método Semi-automatizado para Elicitação de Requisitos de Acessibilidade Web

  • Orientador : LYRENE FERNANDES DA SILVA
  • 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.

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
  • 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.

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
  • 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.

12
  • ELDER GONÇALVES PEREIRA
  •  O Problema do Hiker Dice em Tabuleiro Compacto: Um Estudo Algoritmico

  • Orientador : MARCO CESAR GOLDBARG
  • 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.

13
  • ANA CARLA DE CARVALHO CORREIA
  • Interação Gestual em Ambiente Residencial: Estudo, Concepção e Desenvolvimento

  • Orientador : LEONARDO CUNHA DE MIRANDA
  • 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.

14
  • ALESSANDRO LUIZ STAMATTO FERREIRA
  • Interfaces Cérebro-Computador: Estudo, Design e Desenvolvimento do Jogo AdmiralMind Battleship

  • Orientador : LEONARDO CUNHA DE MIRANDA
  • 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.

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
  • 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.

16
  • ELIEZIO SOARES DE SOUSA NETO
  • Avaliando a Robustez e Manutenibilidade do Comportamento Excepcional em Aplicações C#


  • Orientador : NELIO ALESSANDRO AZEVEDO CACHO
  • 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.

17
  • JOAO 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 : ROBERTA DE SOUZA COELHO
  • 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.

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
  • 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.

19
  • JOSÉ CASTILLO LEMA
  • Evolving the Future Internet Clean-Slate Entity Title Architecture with Advanced Quality-Oriented Control Mechanisms

  • Orientador : ADILSON BARBOZA LOPES
  • 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.

20
  • MATHEUS ABRANTES GADELHA
  • An Augmented Reality Pipeline to Create Scenes with Coherent Illumination Using Textured Cuboids 

  • Orientador : SELAN RODRIGUES DOS SANTOS
  • 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. 

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
  • 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.

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
  • 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.

23
  • ROMULO DE OLIVEIRA NUNES
  • Konect: framework de desenvolvimento para aplicações do Kinect.

  • Orientador : ANDRE MAURICIO CUNHA CAMPOS
  • 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.

24
  • LAUDSON SILVA DE SOUZA
  • Estimativa em Projetos de Desenvolvimento de Aplicações Móveis

  • Orientador : GIBEON SOARES DE AQUINO JUNIOR
  • 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.

25
  • HÉLDON JOSÉ OLIVEIRA ALBUQUERQUE
  • Solução para Interoperabilidade de protocolos em Smarthomes

  • Orientador : GIBEON SOARES DE AQUINO JUNIOR
  • 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.

26
  • 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
  • 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.

27
  • 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
  • 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.

28
  • JOSE FRANCISCO DA SILVA NETO
  • Segmentação Fuzzy de Objetos Tridimensionais com Propriedades Texturais

  • Orientador : BRUNO MOTTA DE CARVALHO
  • 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.

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
  • 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. 

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
  • 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.

31
  • GIULIANA SILVA BEZERRA
  • A framework for investigating the use of face features to identify naturally generated emotion

  • Orientador : MARJORY CRISTIANY DA COSTA ABREU
  • 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.

Teses
1
  • CAIO SÉRGIO DE VASCONCELOS BATISTA
  • Um Monitor de Metadados de QoS e QoC para Plataformas de Middleware 

  • Orientador : 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.

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
  • 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.

3
  • MATHEUS DA SILVA MENEZES
  •  O Problema do Caixeiro Alugador com Coleta de Bônus: Um estudo Algorítmico

  • Orientador : MARCO CESAR GOLDBARG
  • 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. 

4
  • EVANDO CARLOS PESSINI
  • Certificação de Composições de Serviços Web Semânticos

  • Orientador : MARTIN ALEJANDRO MUSICANTE
  • 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. 

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
  • 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.

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
  • 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.

2013
Dissertações
1
  • DANIEL AGUIAR DA SILVA CARVALHO
  •  

    Uma Máquina de Redução de Grafos para Serviços Web

  • Orientador : UIRA KULESZA
  • 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.

2
  • 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
  • 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.

3
  • CAMILA NASCIMENTO DE OLIVEIRA TAUMATURGO
  • Uma Investigação de Algoritmos Exatos e Metaheurísticos Aplicados ao Nonograma

  • Orientador : ELIZABETH FERREIRA GOUVEA
  • 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.

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
  • 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.

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
  • 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.

6
  • ROMERITO CAMPOS DE ANDRADE
  • Algoritmos metaheurísticos na solução do Multicast Packing Problem Abordagem Multiobjetivo

  • Orientador : 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

7
  • MAIRA DE FARIA BARROS MEDEIROS
  • Identificando Interesses Transversais em Modelos de Requisitos PL-AOVgraph

  • Orientador : LYRENE FERNANDES DA SILVA
  • 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.

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
  • 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.

9
  • MARCELO DE BARROS BARBOSA
  • EUPAT for WoW: Uma Ferramenta de Assistência à Programação por Usuário Final

  • Orientador : JAIR CAVALCANTI LEITE
  • 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.

10
  • ALINE DE OLIVEIRA PRATA JAQUEIRA
  • Uso de Modelos i* para Enriquecer Requisitos em Métodos Ágeis

  • Orientador : 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.

11
  • WELLINGTON ALEXANDRE FERNANDES
  • SISTEMA DE APOIO À INTERATIVIDADE EM REVISÕES SISTEMÁTICAS EM ENGENHARIA DE SOFTWARE

  • Orientador : EDUARDO HENRIQUE DA SILVA ARANHA
  • 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.
     
     
12
  • FABIANO PAPAIZ
  • RR3D: Uma Solução para Renderização Remota de Imagens Médicas Tridimensionais

  • Orientador : BRUNO MOTTA DE CARVALHO
  • 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.

13
  • JOSE AUGUSTO NASCIMENTO DE MEDEIROS
  • Reengenharia do Framework Cosmos : uma Solução para Prover Suporte a Adaptações Abertas

  • Orientador : ADILSON BARBOZA LOPES
  • 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

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
  • 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.

15
  • HANDERSON BEZERRA MEDEIROS
  • PEWS-RT: Um sistema de tempo de execucao para a linguagem PEWS.

  • Orientador : MARTIN ALEJANDRO MUSICANTE
  • 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.

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
  • 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.

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
  • 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.

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
  • 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.

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
  • 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.

20
  • FERNANDO HELTON LINHARES SOARES
  • Instanciação e Avaliação de um Framework para a Geração Dinâmica de Processos

  • Orientador : ADILSON BARBOZA LOPES
  • 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.

21
  • VICENTE PIRES LUSTOSA NETO
  • POPT: Uma Abordagem de Ensino de Programação Orientada a Problema e Testes

  • Orientador : 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.

22
  • MAX MILLER DA SILVEIRA
  • Linguagem de Domínio Específico para Modelagem e Avaliação de Processadores.

  • Orientador : MARCIO EDUARDO KREUTZ
  • 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. 

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
  • 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.


24
  • ADRIANO ALVES DODÓ
  • On Rich Modal Logics

  • Orientador : 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.

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
  • 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.

26
  • SIDNEY SOARES MARCELINO
  • Geração de processos WS-BPEL com base em um algoritmo de reescrita de regras

  • Orientador : 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.

27
  • 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
  • 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.

28
  • VIVIANE DE MENEZES RAMALHO SOUZA
  • Geração de Testes a partir de Gramáticas: Áreas de Aplicação

  • Orientador : ANAMARIA MARTINS MOREIRA
  • 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.

Teses
1
  • EDUARDO SILVA PALMEIRA
  • On Extension of Fuzzy Connectives

  • Orientador : BENJAMIN RENE CALLEJAS BEDREGAL
  • 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.

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
  • 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. 

3
  • FERNANDO PINTRO
  • Comitês de Classificadores para o Reconhecimento Multibiométrico em Dados Biométricos Revogáveis

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • 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.

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
  • 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.

5
  • GIVANALDO ROCHA DE SOUZA
  • Arquitetura Multiagentes baseada em Nuvem de Partículas para Hibridização de Metaheurísticas

  • Orientador : ELIZABETH FERREIRA GOUVEA
  • 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.

6
  • IVAN MEZZOMO
  • On Fuzzy Ideals and Fuzzy Filters of Fuzzy Lattices

  • Orientador : BENJAMIN RENE CALLEJAS BEDREGAL
  • 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.
7
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • O Problema Biobjetivo da Árvore Geradora Quadrática em Adjacência de Arestas

  • Orientador : ELIZABETH FERREIRA GOUVEA
  • 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.

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
  • 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.

2
  • ERNESTO CID BRASIL DE MATOS
  • Uma Ferramenta para Geração de Testes de Unidade a partir de Especificações B

  • Orientador : ANAMARIA MARTINS MOREIRA
  • 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.

3
  • 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
  • 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.

4
  • CLAUDIO ANDRES CALLEJAS OLGUIN
  • What is a fuzzy bi-implication?

  • Orientador : JOAO MARCOS DE ALMEIDA
  • 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.
5
  • MARCIANO LOURENÇO DA SILVA GONÇALVES
  • Java-XSC: Módulo Complexo Intervalar

  • Orientador : REGIVAN HUGO NUNES SANTIAGO
  • 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.

6
  • 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
  • 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. 

7
  • GUSTAVO DE ARAUJO SABRY
  • Um Estudo Algorítmico da Programação da Intervenção de Sondas de Produção

  • Orientador : MARCO CESAR GOLDBARG
  • 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.

8
  • PHILIP MICHEL DUARTE
  • Geração Procedural de Cenários Orientada a Objetivos

  • Orientador : 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.

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
  • 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.

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
  • 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.

11
  • REGINA ROSA PARENTE
  • Abordagem de Construção de Arquitetura Homogenea para Comites via meta-aprendizagem

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • 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.

12
  • LIDIANE OLIVEIRA DOS SANTOS SOUSA
  • ReqSys-MDD: Uma Ferramenta para Mapeamento entre Modelos de Features e Requisitos em Linhas de Produtos de Software

  • Orientador : 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.

     
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
  • 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. 

14
  • HUGO FARIA MELO
  • Caracterizando Fluxos Excepcionais em Linhas de Produto de Software

  • Orientador : ROBERTA DE SOUZA COELHO
  • 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.

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
  • 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.

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
  • 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.

17
  • THIAGO PEREIRA DA SILVA
  • AutoWebS: Um Ambiente para Modelagem e Geração Automática de Serviços Web Semânticos

  • Orientador : JAIR CAVALCANTI LEITE
  • 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.

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
  • 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.

19
  • TIAGO SOUZA DOS SANTOS
  • Segmentação Fuzzy de Texturas e Vídeos


  • Orientador : BRUNO MOTTA DE CARVALHO
  • 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.

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
  • 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.

     

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
  • 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.

22
  • HANIEL MOREIRA BARBOSA
  • Formal verification of PLC programs using the B Method

  • Orientador : DAVID BORIS PAUL DEHARBE
  • 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.
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
  • 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.  
    .

2
  • 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
  • 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.

3
  • 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
  • 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.

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
  • 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.
     

5
  • BRUNO EMERSON GURGEL GOMES
  • Desenvolvimento Formal de Aplicações para Smart Cards

  • Orientador : DAVID BORIS PAUL DEHARBE
  • 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.

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
  • 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. 

7
  • WAGNER EMANOEL COSTA
  • Flow-Shop de Permutação Variante Total Flowtime: um Estudo Algorítmico

  • Orientador : MARCO CESAR GOLDBARG
  • 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.

8
  • FAGNER LEMOS DE SANTANA
  • Generalizações do Conceito de Distância, i-Distâncias, Distâncias Intervalares e Topologia.

  • Orientador : BENJAMIN RENE CALLEJAS BEDREGAL
  • 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. 

9
  • PLACIDO ANTONIO DE SOUZA NETO
  • A Methodology for Building Service-Oriented Applications in the presence of Non-Functional Properties

  • Orientador : MARTIN ALEJANDRO MUSICANTE
  • 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.

10
  • ANDERSON PAIVA CRUZ
  • On Fuzzy Implications Classes – Towards Extensions of Fuzzy Rule-Based Systems.



  • Orientador : REGIVAN HUGO NUNES SANTIAGO
  • 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.

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
  • 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.

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
  • 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.

     

3
  • LEONARDO CESAR TEONACIO BEZERRA
  • Uma Colônia de Formigas para o Problema de Caminho mais Curto Multiobjetivo

  • Orientador : MARCO CESAR GOLDBARG
  • 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.

4
  • PEDRO PETROVITCH CAETANO MAIA
  • MyPersonal-EPG: Um EPG Personalizável e com Suporte a Recomendações para o SBTVD

  • Orientador : THAIS VASCONCELOS BATISTA
  • 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.

5
  • 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
  • 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.

6
  • MÁRIO SÉRGIO SCARAMUZZI TORRES
  • Avaliação Sistemática de Abordagens de Derivação de Produto


  • Orientador : UIRA KULESZA
  • 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.

7
  • SILVIA MARIA DINIZ MONTEIRO MAIA
  • Algoritmos transgenéticos aplicados ao problema da árvore geradora biobjetivo

  • Orientador : MARCO CESAR GOLDBARG
  • 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

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
  • 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.

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
  • 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.

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
  • 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.

11
  • LEONIDAS DA SILVA BARBOSA
  • Aprendizado Significativo Aplicado ao Ensino de Algoritmos

  • Orientador : ANDRE MAURICIO CUNHA CAMPOS
  • 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.

12
  • HEITOR MARIANO DE AQUINO CÂMARA
  • Uma Abordagem Sistemática para o Teste de Linhas de Produto de Software

  • Orientador : 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.

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
  • 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.

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
  • 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.

15
  • DANIELLE GOMES DE FREITAS
  • Um Framework de Agentes de Recomendação para Sistemas Web
  • Orientador : 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.
16
  • ANA LIZ SOUTO OLIVEIRA DE ARAUJO
  • Análise de Impacto Baseada em Rastreabilidade de Artefatos para Linhas de Produto de Software

  • Orientador : FLAVIA COIMBRA DELICATO
  • 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.

17
  • ELIZAMA DAS CHAGAS LEMOS
  • DESENVOLVIMENTO DE CHATTERBOTS: UM ESTUDO DE CASO VOLTADO AO ENSINO DE ALGORITMOS

  • Orientador : ANDRE MAURICIO CUNHA CAMPOS
  • 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. 

18
  • SAMUEL LINCOLN MAGALHAES BARROCAS
  • JCircus 2.0: Uma Extensão da ferramenta de tradução de Circus para Java

  • Orientador : MARCEL VINICIUS MEDEIROS OLIVEIRA
  • 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++.

19
  • DIEGO HENRIQUE OLIVEIRA DE SOUZA
  • Joker: Um Framework de Animação para Especificações Formais

  • Orientador : 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.

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
  • 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.

21
  • MADIEL DE SOUSA CONSERVA FILHO
  • Estendendo CRefine para o Suporte de Táticas de Refinamento

  • Orientador : 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.

Teses
1
  • FREDERICO ARAUJO DA SILVA LOPES
  • Uma Plataforma de Integração de Middleware para Computação Ubíqua

  • Orientador : THAIS VASCONCELOS BATISTA
  • 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.

2
  • PAULO HENRIQUE ASCONAVIETA DA SILVA
  • O Problema do Caixeiro Alugador: Um Estudo Algorítmico

  • Orientador : MARCO CESAR GOLDBARG
  • 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.

2010
Dissertações
1
  • CASSIO HIGINO DE FREITAS
  • Sistema Especialista Fuzzy para Projeto de Bombeio Mecânico

  • Orientador : JAIR CAVALCANTI LEITE
  • 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.

2
  • ISAAC DE LIMA OLIVEIRA FILHO
  • Criptoanálise diferencial do Papílio

  • Orientador : BENJAMIN RENE CALLEJAS BEDREGAL
  • 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.

3
  • CLEVERTON HENTZ ANTUNES
  • Geração Automática de Testes a partir de Descrições de Linguagens
  • Orientador : ANAMARIA MARTINS MOREIRA
  • 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.
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
  • 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.

5
  • EVERTON TAVARES GUIMARÃES
  • Uma Estratégia Genérica para Geração de Código Orientado a Aspectos

  • Orientador : THAIS VASCONCELOS BATISTA
  • 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. 

     

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
  • 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.

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
  • 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.

     

     

8
  • GIOVANI ANGELO SILVA DA NOBREGA
  • Integrais de Linha Intervalares: Fundamentos e  Aplicações

  • Orientador : BENJAMIN RENE 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.

9
  • EBERTON DA SILVA MARINHO
  • Um Modelo Conceitual Baseado Em MDD e Padrões para Evolução de Sistemas OA

  • Orientador : FLAVIA COIMBRA DELICATO
  • 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.

     

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
  • 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.

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
  • 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.

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
  • 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.

13
  • LIGIA MARIA MOURA E SILVA
  • Selecao de atributos em comites de classificadores: Uma abordagem usando algoritmos geneticos

  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • 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.

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
  • 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.

15
  • LUCAS SILVA PEREIRA
  • GingaForAll: Linha de Produtos do Middleware Ginga

  • Orientador : THAIS VASCONCELOS BATISTA
  • 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.

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
  • 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.
2
  • JOSE DIEGO SARAIVA DA SILVA
  • AO-OIL: UM MIDDLEWARE ORIENTADO A ASPECTOS BASEADOEM UMA ARQUITETURA DE REFERENCIA
  • Orientador : 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.
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
  • 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.
4
  • BRUNO CRUZ DE OLIVEIRA
  • Simulação de Reservatórios de Petróleo em Ambiente MP-SoC
  • Orientador : IVAN SARAIVA SILVA
  • 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.
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
  • 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.

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
  • 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.
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
  • 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.

8
  • GEAM CARLOS DE ARAUJO FILGUEIRA
  • CrossMDA-SPL: Uma Abordagem para Gerência de Variações Baseada em Modelos e Aspectos

  • Orientador : UIRA KULESZA
  • 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.

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
  • 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.

10
  • VALÉRIO GUTEMBERG DE MEDEIROS JUNIOR
  • Aplicação do Método B ao Projeto Formal de Software Embarcado
  • Orientador : DAVID BORIS PAUL DEHARBE
  • 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.
11
  • FERNANDA MONTEIRO DE SOUZA
  • Geração de Casos de Teste a Partir de Especificações B

  • Orientador : ANAMARIA MARTINS MOREIRA
  • 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.     

2008
Dissertações
1
  • ANDRÉ GUSTAVO DUARTE DE ALMEIDA
  • UM AMBIENTE MULTI-MIDDLEWARE PARA DESENVOLVIMENTO DE APLICAÇÕES DISTRIBUÍDAS
  • Orientador : 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.
2
  • HELIDA SALLES SANTOS
  • “The Interval Constructor on Classes of ML-Algebras”
  • 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.
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
  • 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.
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
  • 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.
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.
  • 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.
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
  • 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.
7
  • NATAL HENRIQUE CORDEIRO
  • Construção de Mosaicos Georreferenciados Usando Imagens Aéreas de Pequeno Formato.
  • Orientador : BRUNO MOTTA DE CARVALHO
  • 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.
8
  • FABIOLA MARIZ DA FONSECA
  • Uma Arquitetura de Referência para o Desenvolvimento de Sistemas Interativos Multiplataformas.
  • Orientador : JAIR CAVALCANTI LEITE
  • 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.
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
  • 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.
10
  • DIOGO FAGUNDES DE OLIVEIRA
  • Dilema Acurácia/Diversidade: Um Estudo Empírico no Contexto de Multiclassificadores
  • Orientador : ANNE MAGALY DE PAULA CANUTO
  • 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.
11
  • ANDERSON PAIVA CRUZ
  • LÓGICA BDI FUZZY
  • Orientador : BENJAMIN RENE CALLEJAS BEDREGAL
  • 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].
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
  • 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.
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
  • 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.
2007
Dissertações
1
  • CLAUDIA FERNANDA OLIVEIRA KIERMES TAVARES
  • PROVA AUTOMATICA DE SATISFATIBILIDADE MÓDULO TEORIA APLICADA AO MÉTODO B
  • 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.
2
  • MILANO GADELHA CARVALHO
  • “IMPLEMENTAÇÃO HARDWARE/SOFTWARE DA ESTIMAÇÃO DE MOVIMENTO SEGUNDO O PADRÃO H.264”
  • Orientador : IVAN SARAIVA SILVA
  • 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.
3
  • DIEGO CAMINHA BARBOSA DE OLIVEIRA
  • Deciding Difference Logic in a Nelson-Oppen Combination Framework
  • 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.
2006
Dissertações
1
  • NELIO ALESSANDRO AZEVEDO CACHO
  • Um Middleware Reflexivo e Orientado a Aspectos: Arquitetura e Implementações
  • 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.
SIGAA | Superintendência de Informática - (84) 3215-3148 | Copyright © 2006-2017 - UFRN - sigaa11-producao.info.ufrn.br.sigaa11-producao