Concluídos - 2006

Autores: Alan do Amaral Ribeiro & Victor Hugo Simões Pinheiro Filho

Orientador: Helena Cristina da Gama Leitão

Resumo:

Neste trabalho, apresentamos uma forma de calcular a quantidade de informação presente em trechos de DNA, a partir do método de alinhamento de múltiplas sequências. Analisaremos a quantidade de informação que as sequências homólogas e não-homólogas fornecem sobre o seu ancestral biológico. Para este objetivo, utilizamos técnicas de análise espectral e teoria da informação.

Autores: Alexandre Carapiá Ferraz & Arthur Cunha Granado

Orientador: Célio Vinicius Neves de Albuquerque

Resumo:

Com o aumento das aplicações multimídia na Internet surge o desafio de como prover suporte às aplicações de conferência multimídia multi-destinatárias, tanto no nível de rede como no nível de aplicação, para o envio de pacotes de mídia em ambientes multipontomultiponto (MPMP). Este trabalho descreve e analisa três diferentes arquiteturas, no nível de aplicação, para o envio de dados multimídia através da Internet, com o objetivo de comparar e contrastar suas características, demonstrando como se podem minimizar os problemas enfrentados utilizandose protocolos e arquiteturas de comunicação existentes. Para efeito de demonstração e de testes realísticos, duas arquiteturas MPMP foram implementadas em Java utilizando-se o framework JMF (Java Media Framework) para a captura e transmissão multi-destinatária de vídeo em tempo real, verificação do comportamento dos pacotes de mídia em uma aplicação de videoconferência.

Autores: Camilo Cardoso Figueira & Felipe Kraus

Resumo:

Na busca incessante por minimizar o tempo de execução de aplicações paralelas em ambientes distribuídos, o estudo do problema do escalonamento de tarefas têm se tornado o foco de muitas pesquisas na área de Grades Computacionais. Nesse contexto, heurísticas de escalonamento têm papel fundamental para que os recursos da grade possam ser explorados de forma e_ciente. Há duas abordagens básicas para as heurísticas de escalonamento, estática e dinâmica. No projeto EasyGrid, essas duas abordagens são unidas na proposta de escalonamento híbrido. A heurística híbrida realiza uma fase de escalonamento estático prévia à execução da aplicação e uma fase dinâmica, que avalia o comportamento do universo da grade ao longo da execução. O objetivo deste trabalho é simular uma hierarquia de escalonamento para execução de aplicações paralelas, possibilitando avaliar a implementação de um modelo hierárquico real e provendo um ambiente de análise de diversas políticas de escalonamento estático e dinâmico.

Autor: Alvaro Feitais

Orientador: Leonardo Cruz da Costa

Resumo:

Neste trabalho será apresentado um exemplo de reengenharia de uma aplicação. Serão mostrados os problemas que a aplicação apresentava e suas soluções, assim como a modelagem da aplicação utilizando UML e os testes para colocá-lo em produção.

Autora: Tatiana Santa Clara Guimarães

Orientador: Leonardo Cruz Costa

Resumo:

Esse trabalho tem como principal objetivo desenvolver um sistema que supra as necessidades apresentadas pela PROAC (Pró-Reitoria de Assuntos Acadêmicos) no controle de projetos de estágio interno da UFF. São características desse sistema o cadastramento de setores, cursos e projetos, bem como seus coordenadores, candidatos a estágio e estagiários, mais ainda, fornece todo o controle de vagas para estagiários e todo o gerenciamento de bolsas incluindo validação de prazos relacionados a elas. Cabe ao sistema também fornecer um mecanismo de impressão de documentos relevantes ao bom gerenciamento e acompanhamento do programa de estágio interno da Universidade. O trabalho propõe um novo sistema de gerenciamento utilizando ferramentas de acesso via “web” que possa proporcionar de maneira eficiente uma boa forma de gerenciamento a partir de um acesso remoto, possibilitando o particionameto da tarefa.

Autores: Paulo Roberto P. Malafaia Junior & Rafael Esteves Mansano

Resumo:

Nos últimos anos as aplicações multimídia vêm ganhando destaque em diversos aspectos da atividade humana. Vídeo-conferência, ensino à distância e tele-medicina são exemplos da importância dessa nova forma de interação. Áudio e vídeo armazenados atendem a uma gama de situações atuais, especialmente as ligadas à educação e ao entretenimento. Nesse caso, servidores multimídia especializados no atendimento de grande número de clientes se fazem necessários. Nesse trabalho estudamos as técnicas relacionadas ao desempenho de servidores multimídia de grande porte. Como a Internet oferece o serviço do “melhor esforço”, que não provê as condições necessárias para as aplicações multimídia, cabe a elas  a tarefa de solucionar os problemas de atrasos e perdas de pacotes, variação de atraso na entrega de pacotes e de ausência de suporte à transmissão multicast. Neste trabalho estudamos técnicas para redução de requisitos de servidores multimídia de grande porte. Com base neste estudo, implementamos protótipos de servidores/clientes multimídia usando transmissão unicast e multicast. Aos servidores com transmissão multicast associamos às técnicas de batching e de patching, duas técnicas para compartilhamento de recursos de transmissão. Essas implementações foram posteriormente avaliadas através de experimentos.

Autoras: Elisa Prado Guimarães Pereira & Úrsula Mendonça da Matta

Orientador: Leonardo Cruz da Costa

Resumo:

Baseando-se no rápido crescimento das aplicações Web, e nas novas tecnologias que as envolvem, cada vez mais novos testes e métodos de análise de erros são exigidos. Para o desenvolvimento desses testes é preciso ter experiência em testes de aplicações tradicionais, uma vez que para realizar essa transição é preciso entender as diferentes tecnologias e arquiteturas entre esses testes para aplicá-las nos ambientes Web. Apresentamos nesta monografia conceitos de testes de software tradicionais, como estes são aplicados em testes de aplicação Web e quais as particularidades dos testes desse tipo de aplicação.

Autor: Luís Filipe Xavier Dos Santos

Resumo:

Nos últimos anos tem crescido o interesse na utilização de Autômatos Celulares para modelar e simular os mais diversos tipos de problemas, em particular em sistemas com estrutura complexa. Neste trabalho apresentamos uma aplicação de Autômatos Celulares em processamento de imagens, onde  a estrutura simples de um Autômato Celular bidimensional probabilístico é utilizada para restaurar imagens com diversos tipos de ruídos, tanto aqueles com ruídos isolados, como sal e pimenta, quanto ruídos concentrados, resultando em blocos de pixels danificados. Para testar a aplicabilidade do método e para possibilitar sua comparação com outras técnicas de processamento de imagens, diversas imagens foram utilizadas, com os diferentes tipos de ruídos. Os resultados foram promissores para todos os exemplos analisados.

Autor: Leonardo Costa Passos

Orientadora: Simone de Lima Martins

Resumo:

O acompanhamento do desempenho de um sistema é tarefa fundamental para a gerência de um sistema, provendo informações sobre o desempenho do conjunto e suas limitações, e também para a obtenção de subsídios para decisões relacionadas à sua utilização, ampliação e dimensionamento, em função do crescimento da carga, do seu comportamento em determinadas situações e da otimização dos recursos disponíveis. Ao se fazer uma análise de desempenho se tem a oportunidade de visualizar necessidades atuais e prever futuras necessidades para o sistema em questão. Também é possível melhorar a desempenho do sistema com a otimização dos parâmetros configuráveis. Por um custo relativamente baixo, relacionado ao esforço de programação, pode se conseguir um ganho de desempenho considerável ao se realizar um teste de desempenho. Ou seja, um sistema que demorou meses para ficar pronto pode ganhar um percentual de dois dígitos no seu tempo de resposta em apenas algumas semanas. Um acompanhamento de longo prazo, de forma contínua, de um sistema traz ótimos resultados, pois com base em um histórico de dados relativos à utilização do sistema sob diversos aspectos, podem-se fazer projeções de crescimento de demanda, favorecendo o planejamento de investimentos em expansão dos recursos atuais de forma a manter ou elevar o nível de qualidade do sistema. Na figura abaixo, estão representados os benefícios da análise de desempenho e o seu resultado: ESTABILIDADE. O resultado máximo só é obtido com a conjunção das três metas básicas: Prevenção de desastres, Conhecimento das limitações e Melhor aproveitamento do hardware.

Autores: Henrique Bueno Rodrigues & Hildebrando Trannin

Resumo:

A computação distribuída e paralela oferece a oportunidade de obter melhoras significativas no desempenho quando aplicações tiram proveito de mais de um recurso computacional. Enquanto um cluster, tipicamente, é um conjunto de computadores idênticos conectados em uma rede local, uma grade computacional, uma nova estrutura sendo oferecida, é uma aglomeração de computadores diferentes geograficamente distribuídos e interconectados pela Internet. Como uma grade pode ser composta por vários clusters, ela possui uma quantidade consideravelmente maior de computadores do que os disponíveis a um usuário na sua instituição. As maiores restrições para uma ampla utilização de grades por aplicações que demandam alto poder computacional são a dificuldade em coordenar o compartilhamento dos recursos heterogêneos oferecidos pelas diversas máquinas que compõem a grade e o problema de como disponibilizar este ambiente de execução de forma transparente ao usuário. Dessa forma, a atividade de distribuir as tarefas que compõem uma aplicação ao longo dos processadores disponíveis, de modo a acelerar a execução como um todo e ser transparente para o usuário, se torna uma importante necessidade para o sucesso desta forma de computação. O Portal EasyGrid tem como um dos objetivos oferecer um ambiente amigável e simples para a utilização de computação em grades para a resolução de problemas. De maneira particular, o Portal auxilia o desenvolvimento e avaliação de algoritmos para o problema de escalonamento de tarefas. Neste estudo de caso uma avaliação tipicamente envolve a confecção, execução e coleção e análise dos resultados de milhares de experimentos. Esta projeto final apresenta o Portal EasyGrid com sua nova estratégia de execução em grades computacionais e uma nova estratégia estática de escalonamento de tarefas desenvolvida com base nos resultados de experimentos que utilizaram essa estratégia. Mostrando que este processo de avaliação pode ser realizado de maneira mais rápida e fácil.

Autor: Hugo Trally Ferreira

Orientador: Esteban Walter Gonzalez Clua

Resumo:

Tradicionalmente, dispositivos como celulares e PDAs vêm de fábrica com alguns programas instalados que são desenvolvidos sob a coordenação do fabricante do dispositivo. Essa situação inviabiliza o desenvolvimento de novos programas pela comunidade interessada, uma vez que a arquitetura interna de software e hardware dos dispositivos não é de domínio público. Visando contornar essa situação, diversos fabricantes têm buscado formas de permitir que aplicações sejam desenvolvidas por qualquer um interessado e ao mesmo tempo não revelar os seus segredos industriais. A solução para esse problema baseia-se na criação da linguagem de programação Java 2 Micro Edition (J2ME) [Giguere00, Feng01] e da inclusão de uma máquina virtual Java nos dispositivos. Dentre as aplicações para dispositivos móveis, jogos parecem ser os que têm maior potencial mercadológico, haja visto o que ocorre atualmente [URL01]. Dado este potencial, deve-se observar nos próximos anos uma multiplicação de grupos interessados nesse nicho de aplicação baseando-se em J2ME. Entretanto, como discutido mais adiante, para poder produzir jogos com a qualidade e velocidade demandadas, é preciso superar algumas limitações de J2ME, assim como construir ferramentas de desenvolvimento como motores  (framework) e editores de cenários.

Autor: Luciano Marinho Zanuthe

Orientador: Profª Aura Conci

Resumo:

Ao pensar em modelagem e animação, lembra-se de desenhos animados e cinema. Porém existem muitas aplicações para as animações que não são na indústria do entretenimento. Podemos usá-las para representar algo que não poderíamos ver naturalmente ou externar algo que está apenas em nossa mente como uma demonstração de arte. As animações e modelagem se classificam em 2D e 3D. Animações 2D são as animações desenhadas em um plano, onde o desenhista cria toda a perspectiva e iluminação com suas técnicas. Nas animações 3D um computador realiza todos os cálculos necessários para causar a impressão de uma cena real 3D. Esses cálculos envolvem perspectiva, iluminação, texturas e efeitos visuais. Porém esse tipo de animação é muito mais complexo e exige muito conhecimento das técnicas e softwares que as produzem. Neste trabalho pretende-se mostrar um conjunto de técnicas e ferramentas utilizadas para realização de animações em 3D geradas a partir de programas de computação gráfica com elevado realismo visual. Será mostrada uma seqüência de passos para a criação de um personagem móvel baseado em exemplos desenvolvidos pelo autor deste trabalho. Estes mesmos passos podem ser usados como base na criação de uma animação.

Autores: José Edmilson Vasconcelos dos Santos Junior & Paulo Sérgio Rodrigues Cruz

Orientador: Prof. Vinod Rebello

Resumo:

O projeto é um estudo para criar uma ferramenta multi-plataforma escalável e robusta de comércio eletrônico utilizando uma rede peer-to-peer. O objetivo é integrar a busca de produtos de diversas empresas diferentes e oferecer em um único lugar uma forma de negociação e venda de tais produtos. Baseado em padrões abertos, como XML, e tecnologias de código aberto, como JXTA e HSQLDB, atrelados a uma estrutura de projeto em camadas com baixo acoplamento, a ferramenta eBroker se torna uma solução de baixo custo e escalável para atender tanto empresas bem estruturadas, quanto pequenas lojas e pessoas físicas para vender e apresentar seus produtos ao consumidor final. Além de concentrar sob uma só interface uma maneira simples de efetuar uma busca e facilitar a comparação das diversas ofertas de produtos em um só lugar o eBroker também oferece uma maneiras mais flexível de se encontrar um produto, atendendo assim a necessidade de quem ainda não sabe exatamente o que precisa ou o que deseja comprar.

Autor: Daniel Naim Serra

Orientador: Inhaúma Neves Ferraz

Resumo:

Os contínuos avanços tecnológicos e o desenvolvimento dos sistemas informatizados, a auditoria contábil, encarregada de avaliar as demonstrações financeiras, os controles internos e o cumprimento das políticas e normas, passaram a ter função de auditar também as informações usadas no processamento eletrônico de dados. Com o tempo, verificou-se que esta solução não era satisfatória, pois os auditores não possuíam o conhecimento técnico suficiente para auditar o ambiente de processamento de dados. Devido à enorme quantidade e variedade de arquiteturas de informação encontradas nas grandes empresas contemporâneas, nenhuma metodologia de auditoria de sistemas pode atender completamente a todos os tipos de ambientes a serem auditados, então eles realizavam apenas validações ao redor do computador, não examinando os processos, mas somente os relatórios. Comparavam-se os dados de entrada com os de saída, depois de executados manualmente os cálculos e as rotinas devidas. O trabalho era lento e penoso. Aprovava-se uma ou outra rotina, mas não se tinha a visão abrangente do sistema. O auditor contábil era inapto para julgar a segurança, a confidencialidade dos dados a eficiência dos programas, ou para atestar que o sistema não sofreria soluções de continuidade. Era preciso algo mais. Assim, a gerência de auditoria se viu diante da difícil questão de como elaborar, de maneira eficiente, o controle e a revisão das atividades de processamento eletrônico de dados. A melhor solução para este problema foi, e ainda é, estabelecer uma equipe de auditores de sistemas (profissionais da área). Com isso, houve a necessidade de se desenvolver uma metodologia com procedimentos específicos para que pudessem ser realizados os trabalhos de auditoria de sistemas. Este trabalho tem por objetivo reunir os principais conceitos e procedimentos indispensáveis à execução da auditoria de sistemas de informação. Ele oferece ainda uma apresentação básica para avaliação dos componentes físicos, tecnológicos e organizacionais dos sistemas da empresa auditada, tais como controles gerenciais, segurança física e lógica, entrada, processamento e saída de dados, redes de comunicação, desenvolvimento de sistemas e planejamento de contingências. Muitos dos procedimentos de auditoria indicados neste trabalho precisarão ser adaptados às situações específicas em que serão aplicados, e para realizar um bom trabalho, o auditor deve inicialmente familiarizar-se com as características próprias da organização, seus sistemas e sua infra-estrutura tecnológica, a fim de poder adaptar os procedimentos e padrões de auditoria indicados à realidade existente.

Autores: Frederico Martins Ribeiro & Igor Veloso Custódio & Mauro Bandeira Leite

Orientador: Prof. Dr. Marco Antônio Silva Ramos

Resumo:

O presente trabalho descreve o desenvolvimento de uma ferramenta para transmissão de streaming multimídia em tempo real que, além da efetuar a transmissão propriamente dita da mídia, tem como objetivo principal monitorar e adaptar a qualidade de serviço durante a transmissão, garantindo assim os requisitos mínimos de qualidade de serviço necessários. Será utilizada a arquitetura cliente-servidor para se efetuar a transmissão, utilizando-se para tal fim o protocolo Real-time Transport Protocol (RTP).

Autores: Diego Soares de Souza & Felipe de Oliveira Maia

Orientador: Célio Vinicius Neves de Albuquerque

Resumo:

IPTV significa Internet Protocol Television que, em português, significa Televisão sobre Protocolo de Internet ou, simplesmente: TV via Internet. Trata-se de uma tecnologia que vem sendo desenvolvida há cerca de 10 anos e visa viabilizar a transmissão de conteúdo televisivo via Internet. A transmissão de vídeo na Internet vem sendo difundida de forma espantosa e ganhando popularidade rapidamente. O sítio YouTube, onde as pessoas podem disponibilizar e assistir vídeos domésticos, por exemplo, chegou a uma marca de 100 milhões de acessos diários e acredita-se que ainda não atingiu o seu ápice. Cada vez mais cresce o interesse nessa tecnologia, cujo principal atrativo é oferecer ao espectador, dentre outras coisas, a possibilidade de assistir o conteúdo desejado quantas vezes e quando quiser. Atuando como suporte a essa área, atualmente, existem diversos portais que funcionam como um guia de canais de TV transmitidos pela Internet. Através desses portais o espectador tem acesso, direta ou indiretamente, ao conteúdo dos canais listados. Entretanto, nota-se que essa gama de guias não oferece uma forma amistosa de exibição de programação, no qual é extremamente difícil encontrar o conteúdo desejado. Esses sítios se atêm apenas a listar os canais que oferecem algum tipo de conteúdo televisivo, e não são oferecidas informações sobre o conteúdo da programação específica de cada canal. O objetivo deste trabalho é criar um guia similar aos guias de TV por assinatura, porém disponível para qualquer emissora de IPTV. Neste guia global o espectador terá acesso à programação ao vivo das emissoras, bem como informações sobre a esta programação, como descrição, gênero, classificação, banda e decodificador necessários para visualização, dentre outras. Além disso, seria possível a emissora disponibilizar acesso a conteúdo armazenado, podendo este ter sido previamente exibido na programação ao vivo ou não. Para tanto, foi desenvolvido um portal para cadastro de emissoras de IPTV em um banco de dados, assim como uma aplicação para fazer a coleta periódica das programações de cada emissora. Também foi elaborado um formato de XML específico para as emissoras poderem disponibilizar suas grades de programação através de arquivos XML. O portal confere também as funcionalidades de conexão à programação ao vivo de cada emissora, busca de canais por nome, descrição, países e língua. Além disso, foi elaborada uma ferramenta WEB para ajudar as emissoras a gerar o XML de suas programações, de forma a agilizar a atualização das programações beneficiando o espectador. A idéia é reunir, de forma simples e amistosa, a programação de vários canais espalhados pelo mundo em um único lugar, poupando tempo e esforço ao usuário.

Autores: Israel Calheiros da Silva & Renato Jeronimo G. de Mattos

Orientador: Dsc. Inhaúma Neves Ferraz

Resumo:

Estudo do Mercado de Opções e implementação da solução da equação diferencial de Black-Scholes pelo método de fórmula fechada e árvore. A abordagem adotada seguirá estes passos: 1. Modelagem do comportamento estocástico de ativos utilizando o movimento browniano geométrico; 2. Utilização do Lema de; Ito para chegar ao comportamento estocástico geral de derivativos; 3. Criação de uma carteira, ou portfólio, de risco zero que deve render taxa livre de risco por arbitragem chegando à equação diferencial geral de derivativos; 4. De cada contrato extrair as condições de contorno para a solução da equação diferencial; 5. Efetuar a busca de soluções por meio de fórmula fechada, árvore, método de Monte Carlo ou risk neutral valuation.

Autores: Israel Calheiros da Silva & Renato Jeronimo G. de Mattos

Orientador: Dsc. Inhaúma Neves Ferraz

Resumo:

Estudo do Mercado de Opções e implementação da solução da equação diferencial de Black-Scholes pelo método de fórmula fechada e árvore. A abordagem adotada seguirá estes passos: 1. Modelagem do comportamento estocástico de ativos utilizando o movimento browniano geométrico; 2. Utilização do Lema de; Ito para chegar ao comportamento estocástico geral de derivativos; 3. Criação de uma carteira, ou portfólio, de risco zero que deve render taxa livre de risco por arbitragem chegando à equação diferencial geral de derivativos; 4. De cada contrato extrair as condições de contorno para a solução da equação diferencial; 5. Efetuar a busca de soluções por meio de fórmula fechada, árvore, método de Monte Carlo ou risk neutral valuation.

Autores: Gustavo de Sá Carvalho Honorato & Felipe Neves de Aguiar