RCAAP Repository

Compartilhamento de conhecimento entre sistemas baseados em conhecimento: um estudo de caso

Neste trabalho, estaremos tratando fundamentalmente de teorias formais. Desta forma, cada sistema baseado em conhecimento considerado será tratado por meio da teoria formal que implementa. Conseqüentemente, consideraremos um sistema completamente definido pela caracterização da linguagem na qual ele é codificado, seus axiomas e regras de inferências válidas para seu funcionamento. Sob esta ótica, torna-se possível caracterizar o processo de compartilhamento de conhecimento como a interação dos formalismos implementados pelos sistemas participantes. Entretanto é impostante que os resultados teóricos obtidos sejam também reproduzidos nas implementações de sistemas que codifiquem, em liguagens executáveis por computadores, os formalismos analisados e os métodos propostos. Torna-se, então, útil a elaboração de programas que ilustrem os resultados obtidos. Claramente, o trabalho aqui proposto não tem como objetivo principal a construção de um programa. A importânciado desenvolvimento e implementação de um sistema reside na possibilidade de se avaliar um modelo teórico pelo comportamento de um programa. Enfim, todos os programas propostos e desenvolvidos np decorrer desta pesquisa têm como objetivo dar suporte a uma teoria e não compor um sistema comercial

Year

2000

Creators

Roberto Cassio de Araujo

Segmentação de seqüências de imagens por morfologia matemática

Dentre as técnicas aplicadas em produção de vídeo digital estão as aplicadas para combinação de vídeos. Estas técnicas consistem na substituição de objetos e da colagem dos mesmos em uma outra seqüência. Um dos problemas apresentados por técnicas convencionais de combinação de vídeos é o número de cuidados a priori que devem ser tomados na produção do vídeo que será processado. Outro problema relacionado a combinação de vídeos ocorre quando se deseja editar um vídeo que não foi produzido com cuidados a priori. Neste caso, os objetos são recortados manualmente, o que pode se tornar inviável, devido a grande quantidade de quadros da seqüência. O objetivo deste trabalho é propor uma ferramenta computacional que faça combinação de vídeos, sem as desvantagens apresentadas acima. Os objetivos de interesse são segmentados através da aplicação do paradígma de Beucher-Meyer, uma técnica aplicada em segmentação de imagens que provê a detecção exata das bordas dos objetos apartir de um conjunto de marcadores, reduzindo o problema de segmentação ao problema de se encontrar marcadadores para objetos a serem segmentados. Estes marcadores são encontrados através da aplicação de operadores 'aperture', projetados portécnicas de aprendizado computacional. Após a introdução, seguem um capítulo sobre fundamentos da morfologia matemática e um capítulo sobre segmentação morfológica e filtros conexos, onde o paradígma de Beucher-Meyer será apresentado. Em seguida, são apresentados os operadores aperture, bem como o projeto destes operadores por aprendizado computacional. É apresentada, então, a metodologia proposta para segmentação de seqüências de imagens, bem como alguns resultados da aplicação desta metodologia em seqüências de imagens em níveis de cinza e em seqüências de imagens coloridas

Year

2000

Creators

Franklin César Flores

Algoritmos paralelos para o paradigma de pertinência interior/exterior

O teste interior/exterior, que especifica se um ponto é parte de um objeto matematicamente bem definido, é um problema crucial em computação gráfica. Algoritmos baseados nesse teste podem ser executados para diversis pontos em paralelo, uma vez que não há dependência entre as computações para diferentes pontos. Este dissertação apresenta uma variedade de implementações paralelas para operações de preenchimento e traçado de linhas para combater a principal desvantagem desse tipo de algoritmo: sua lentidão em uma implementação seqüencial em software para edição e manipulação interativa

Year

2000

Creators

Marcos Machado Ottani Assis

Uma infra-estrutura para o gerenciamento de aplicações CORBA tolerantes a falhas

Nesta dissertação é apresentado um serviço que fornece uma infra-estrutura robusta para o gerenciamento de aplicações CORBA tolerantes a falhas, denominado Juggler. Esse serviço disponibiliza interfaces que permitem o gerenciamento da configuração de aplicações CORBA tolerantes a falhas baseadas na redundância dos objetos que as compõem (grupos de objetos) e em mecanismos para a detecção e a recuperação de falhas desses objetos. Através do Juggler, é possível definir o estilo de replicação e as propriedades de tolerância a falhas associados a cada grupo de objetos individualmente. Essas propriedades definem, por exemplo, a localização e a quantidade mínima de réplicas que compõem um grupo, e permitem escolher a forma mais adequada para a recuperação de falhas ocorridas nos membros de um grupo. Além disso, o Juggler permite a modificação dinâmica das propriedades de tolerância a falhas e do estilo de replicação associados a grupos de objetos. O Juggler foi desenvolvido tomando-se como base o OGS, um serviço que disponibiliza os mecanismos básicos para a criação de grupos de objetos CORBA. O OGS foi escolhido como infra-estrutura para o desenvolvimento do Juggler por definir uma arquitetura para comunicação de grupo que utiliza apenas estruturas padronizadas pela especificação CORBA, possibilitando a portabilidade e a interoperabilidade desse serviço em diferentes CORBA ORBs

Year

2001

Creators

Marcos Aurélio Mendes de Moura

Algoritmos paralelos para fecho convexo

O principal objetivo de nossa dissertação é de estudar os algoritmos paralelos e de implementar alguns algoritmos probabilísticos para o problema do fecho convexo. Nosso estudo começa com os algoritmos seqüenciais que podem ser usados na fase de cálculo local de cada processador. Em seguida apresentamos uma classificação dos modelos de computação paralela. Dois destes modelos são usados para estudar os algoritmos paralelos, um deles foi escolhido pelas características teóricas e outro pelas características práticas ligadas à realidade das máquinas atuais. Por fim, descrevemos e implementamos dois algoritmos probabilísticos incluindo o algoritmo Quickhull paralelo na máquina paralela Parsytec PowerXplorer

Year

2001

Creators

Emmanuel Kayembe Ilunga

Um instrumento de avaliação da qualidade para software educacional de matemática

Os computadores estão sendo introduzidos de forma cada vez mais freqüente em todos os níveis da educação. Sua utilização nas aulas de matemática nas séries do ensino fundamental pode possuir várias finalidades, tais como: fonte de informação, auxílio no processo de construção de conhecimento, um meio para desenvolver autonomia pelo uso de softwares que possibilitem pensar, refletir e criar soluções. O cognitivo dos alunos, principalmente na medida em que possibilita o desenvolvimento de um trabalho que se adapta a distintos rítmos de aprendizagem e favorece a que o aluno aprenda com seus erros. Por outro lado, o bom uso que se possa fazer dessa ferramenta na sala de aula depende da escolha de softwares, em função dos objetivos que se pretende atingir e da concepção de conhecimento e de aprendizagem que orienta o processo. Este trabalho propõe um instrumento de avaliação de qualidade para softwares educacionais de matemática direcionados ao ensino fundamental. Este instrumento foi desenvolvido na forma de questionários, baseando-nos tanto em aspectos técnicos (funcionalidade, usabilidade, confiabilidade, eficiência, manutenibilidade, portabilidade) como em aspectos educacionais (pedagógicos, sócioculturais, cognitivos, lúdicos). Com isto, uma avaliação de produtos de software educacional pode ser realizada, a fim de que seja reconhecido o quão aplicável um produto pode ser, dentro dos objetivos traçados. No instrumento foram incluídos módulos de avaliação específicos ao tipo de software educacional a ser avaliado. Foram contempladas as modalidades: exercício e prática, tutorial, jogo pedagógico, simulação e sistema hipermídia. Tendo em vista a importância da característica 'usabilidade' no software educacional, um questionário dirigido aos usuários finais (alunos) foi desenvolvido. Também, aspectos referentes a cada um dos ciclos do ensino fundamental foram cobertos pelo instrumento de avaliação

Year

2001

Creators

Ana Paula Gladcheff

Rastreamento eficiente de faces em um subespaço wavelet

O reconhecimento computacional de faces humanas a partir de seqüências de vídeo emerge nos dias atuais como um instigante e desafiador campo de pesquisa. Os resultados dos estudos realizados neste tema encontram diversas aplicações em sistemas de segurança, autenticação de usuários, interação homem-máquina e outras. Em geral, três etapas são discriminadas em um sistema de reconhecimento de faces a partir de vídeo: (1) detecção e rastreamento da face do usuário, (2) segmentação e normalização da face em cada quadro da seqüência, e (3) extração de características e classificação. O objetivo do presente trabalho consiste no estudo e desenvolvimento de algoritmos de visão computacional relativos à primeira etapa, com ênfase no problema de rastreamento de faces. A detecção da presença da face do usuáqrio, em uma sequencia de imagens, foi realizada utilizando-se um procedimento baseado em um modelo estatístico de cor da pele. Em contrapartida, para efetuar o rastreamento da face, realizamos experimentos com a técnica mais sofisticada, recentemente proposta na literatura, denominada Gabor wavelet networks (GWNs). O problema de localização e rastreamento de características faciais também foi tratado, visto que o módulo de reconhecimento, atualmente sendo implementado por outro aluno de mestrado [Campos, 2001], utiliza essas características para efetuar a classificação da face. Como principal contribuição deste estudo, salientamos a proposição de um método eficiente de rastreamento de faces, realizado em um subespaço wavelet de baixa dimensionalidade. Mais especificamente, esse método constitui um aperfeiçoamento, em termos de eficiência, da técnica de rastreamento baseada em GWNs. A comparação de ambas abordagens, bem como a avaliação de pperformance da técnica introduzida, considerando aspectos como precisão, robutez e eficiência, serão discutidas ao longo deste trabalho

Year

2001

Creators

Rogério Schmidt Feris

Uma arquitetura para simulação flexível de protocolos para computação móvel

Os ambientes de computação móvel possuem características que influenciam o projeto de sistemas computacionais sob vários aspectos. Os canais de comunicação sem fio apresentam alta taxa de erros e baixa largura de banda, se comparados às tecnologias atuais de cabeamento. O mobilidade das estações móveis pode causar grandes variações na qualidade da comunicção sem fio e confere ao ambiente de rede uma topologia dinâmica. Além disso, dispositivos móveis possuem recursos limitados de processamento e consumo de energia. O maior impacto dessas características é no desenvolvimento de protocolos de rede. Nestes ambientes, os prootocolos devem implementar mecanismos de correção de erros, controle de acesso ao meio sem fio, gerência de localização variável de estações móveis e utilizar adequadamente os recursos da rede, sobretudo o acesso aos canais de comunicação e o sonsumo de potência. Devido a essa complexidade adicional dos protocolos para computação móvel, simuladores têm sido amplamente utilizados com o objetivo de avaliar o desempenho desses protocolos e a adequação dos modelos de simulação para as aplicações reais, sobretudo os modelos de mobilidade. Uma limitação comum a esses simuladores é não permitir a simulação de protocolos de alto nível de forma flexível e adequada

Year

2001

Creators

Ricardo Couto Antunes da Rocha

Escalonamento de reservas de domínio

Pesquisas na área de sistemas operacionais indicam que os sistemas operacionais atuais não atendem adequadamente a demandas específicas de aplicações de tempo real as quais apresentam comportamento definido segundo requisitos temporais, não oferecendo garantias de QoS. O desempenho de uma aplicação é, em parte, determinado pela carga do sistema. Os parâmetros tradicionais de QoS incluem justiça, atraso e 'throughput'. Quando o objetivo é executar diversas aplicações de tempo real na mesma máquina, o sistema operacional precisa oferecer garantias de QoS tal que os recursos do sistema possam ser provisionados pelas aplicações tal que alcancem níveis desejados de desempenho previsível. Sob esse contexto, dividimos nosso trabalho em três partes. Na primeira, discutimos o problema da alocação apropriada dos recursos para cada tipo de aplicação ser capaza de alcançar um nível específico de QoS e das limitações dos sistemas operacionais atuais. Apresentamos algumas soluções aplicáveis tratadas em suas soluções algorítmicas presentes na literatura, que utilizam esquemas de gerenciamento de recursos baseados em reserva de recurso e que oferecem algumas garantias de QoS. Na segunda parte, nosso estudo está baseado em dois outros trabalhos de pesquisa. O primeiro diz respeito a um novo critério de QoS chamado serviço cumulativo. Discutimos a importância da garantia de serviço cumulativo para escalonadores tal que ofereça desempenho previsível para aplicações que requerem múltiplos recursos. O critério, serviço cumulativo, permite o relacionamento do total de serviço obtido por um processo sob uma política de escalonamento com o serviço ideal que o processo teria acumulado executando em cada recursos e tivesse determinado uma fração de reserva de cada um destes. E refere-se também aos algorítmos de escalonamento: Move-to-Rear List Scheduling, Shortest Virtual Time, First Round Robin e Weighted Round Robin Scheduling, ) que provêm as garantias de serviço cumulativo, justiça (compartilhamento do recurso proporcional) e atraso limitado. O segundo trabalho de pesquisa refere-se à introdução de um novo conceito em sistemas operacionais chamado reservas de domínios que permitem um controle explícito sobre o provisionamento dos recursos do sistema pelas aplicações. Em geral, a cada reserva de domínio é designada uma certa fração de reserva de cada recurso (por exemplo, 25% CPU, 50% I/O). Apresentamos o sistema operacional experimental Eclipse que utiliza a abstração reserva de domínios e estes escalonadores. Na terceira parte, estudamos as políticas de escalonamento acima, onde um 'quantum' alocado para um domínio pode ser particionado, e suas propriedades. Desenvolvemos um ambiente para simulação baseado na proposta reserva de domínio, onde estas políticas foram implementadas com o intuito de analisarmos os efeitos de reserva de domínio sob o modelo de sistema e processos, o seu comportamento e eficácia diante de vários cenários

Year

2001

Creators

Maria do Carmo Garcia Noronha

Estudo de requisitos para um software educativo de apoio ao ensino da introdução a computação

Este estudo apresenta a análise de requisitos para um software educativo de apoio ao ensino da introdução à computação. O caráter multidisciplinar deste trabalho fundamenta-se na psicologia educacional construtivista e na engenharia de software. A metodologia usada baseou-se nas técnicas de análise de requisitos da engenharia de software, levando em conta as restrições funcionais derecentes paradigmas educacionais e das tecnologias computacionais. O ensino da introdução à computação pode ser beneficiado pelo uso de um software educativo de apoio ao professor, propiciando aos alunos um ambiente adequado às suas necessidades individuais, onde conceitos em aprendizagem possam ser explorados e praticados. Neste estudo é considerado o histórico do uso desta ferramenta computacional, que visa aumentar a compreensão do aluno nos elementos básicos da programação de computadores levando-o a construção de uma base mais sólida de conhecimento, que irá ter como conseqüências um melhor aproveitamento nas disciplinas seguintes e uma diminuição do número de repetências. Com base na análise levantada, este estudo apresenta uma proposta metodológica de elaboração de exercícios baseada em três fatores: os erros mais freqüentes dos iniciantes em programação, a teoria consteutivista de Piaget e os conceitos a serem aprendidos. Contudo os exercícios obtidos precisavam de um ambiente adequado à sua execução, foi então desenvolvido o protótipo de um ambiente de trabalho semi-dirigido, onde o aprendiz pode testar suas hipóteses sobre como resolver o problema, propiciando uma interação mais significativa que os atuais testes de múltipla escolha

Year

2001

Creators

Maria Clara Barros de Oliveira Fischer

RMIRep: suporte para replicação de objetos em redes de alta latência

O avanço na tecnologia de computadores móveis, como laptops e PDAs, tem permitido amplo acesso a diversos sistemas de informação distribuidos. O uso de computadores móveis introduz novos desafios ao projeto à implementação de aplicações em redes de alta latência, que devem lidar com conectividade intermitente, desconexões freqüentes e taxas de transmissão de dados baixas. Em particular, computadores móveis precisam ter acesso à informação mesmo quando desconectados. A replicação de dados é uma solução atraente para disponibilizar acesso a sistemas de informação distribuídos em redes de alta latência. Nessa dissertação investigamos a política de consistência fraca Bayou, desenvolvida no Xerox PARC. Políticas de replicação com consistência fraca permitem que servidores distintos leiam e modifiquem dados sem haver coordenaçao contínua e explícita entre eles, aumentando a disponibilidade da informação. Bayou é inovador pois permite que aplicações controlem o equilíbrio entre os graus de disponibilidade, inconsistência e reconciliação dos dados, através das políticas de usuário, que podem ser configuradas para satisfazerem as necessidades específicas da aplicação. Apresentamos o projeto e a implementação do sistema RMIRep, que fornece suporte para o desenvolvimento e a análise de mecanismos de consistência. Integramos três desses mecanismos ao RMIRep: a política de réplicas independentes, a política de dados totalmente sincronizados e uma adaptação da política Bayou. Realizamos experimentos com as políticas total e Bayou em uma rede Ethernet e com uma conexão PPP com taxa de transmissão baixa. Uma contribuição do sistema RMIRep é a integração de políticas de consistências variadas em um ambiente popular, que pode co-existir com aplicações de sistemas de informação já existentes. RMIRep estende a hierarquia Java RMI para fornecer a funcionalidade da replicação e consistência dos dados. Java RMI é um mecanismo de ) invocação remota de métodos que dá suporte a objetos java distribuídos. A aceitação dessa tecnologia na industria e o seu potencial para expansão foram cruciais na nossa decisão de adotá-la como sistema para o nosso projeto

Year

2001

Creators

Jorge Chaves Radel Bittencourt

Metamodelo para controle de estratégias assíncronas de replicação de dados

Esta dissertação trata das formas e técnicas de distribuição de dados, através da replicação assíncrona, integrado com o projeto de banco de dados com modularização, criando um projeto único chamado de Projeto de Banco de Dados com Modularização e Replicação. A elaboração do projeto tem em vista a utilização de um metamodelo de dados, capaz de manter todas as informações necessárias para se fazer o controle no uso de diversas estratégias de replicação, conforme o Projeto de Modularização e Replicação de Dados, realizado em um modelo corporativo de dados. Foi desenvolvida uma ferramenta que permite que o metamodelo seja alimentado, possibilitando o gerenciamento e manutenção do projeto de replicação e particionamento de dados, após o cadastro lógico do modelo conceitual global de dados. Para garantir a utilização correta de diversas estratégias de replicação do metamodelo em questão, foi implementado um verificador para analisar as consistências dos projetos de replicação definidos para o banco de dados. Tal verificador, por sua vez, foi incorporado à ferramenta desenvolvida pelo Departamento de Informática da Reitoria da USP, para garantir a consistência de suas bases de dados

Year

2001

Creators

Carlos Henrique Maia Braga

Colorações restritas de grafos

Tratamos de coloração restrita de grafos, que é uma generalização do problema clássico de coloração de vértices. A generalização é obtida impondo-se restrições ao conjunto de cores disponíveis para cada vértice. Estudamos algumas técnicas de coloração restrita que combinam métodos combinatórios, algébricos e probabilísticos. Inicialmente, expomos algumas relações entre coloração clássica e coloração restrita. A seguir, tratamos de coloração restrita em grafos planares, apresentando resultados que utilizam métodos combinatórios de Thomassen e Gutner. Prosseguindo, descrevemos uma abordagem algébrica desenvolvida por Alon e Tarsi. Uma aplicação dessa abordagem é a prova, devida a Haggkvist e Janssen, da conhecida conjectura da coloração restrita de arestas de grafos completos de ordem ímpar. Finalmente, discutimos a prova de Galvin para a conjectura da coloração restrita de arestas de grafos bipartidos

Algoritmos para predição da estrutura secundária do RNA

De forma similar à que ocorre com as proteínas, as moléculas de RNA assumem uma conformação espacial (estrutura) que desempenha um importante papel na definição de sua função. Além de influenciar os processos de transcrição, tradução e replicação, as moléculas de RNA podem desenvolver atividades catalíticas. Podem ainda desempenhar papel regulador ou estrutural. Os métodos laboratoriais para detrminação da estrutura do RNA são onerosos. A estrutura secundária do RNA, além de fornecer informações acerca da função da molécula, serve também como importante etapa na definição de sua estrutura terciária. Daí a importância em se desenvolver métodos computacionais, rápidos e precisos, de predição da estrutura secundária a partir da estrutura primária. As duas mais importantes estratégias de resolução do problema estão baseadas em critérios de estabilidade termodinâmica (de energia livre mínima) e na identificação dos dobramentos comuns entre moléculas homólogas. No primeiro caso, os algoritmos mais importantes são baseados em técnicas de programação dinâmica. No segundo, os mais importantes algoritmos conhecidos são baseados em modelos de covariância e operam sobre um conjunto de seqüências homólogas alinhadas. Situado no contexto da genômica estrutural e da bioinformática, o trabalho apresenta os modelos propostos para o problema, além de escrever formalmente as várias técnicas e métodos envolvidos na sua resolução. Desenvolvemos também implementações eficientes dos algoritmos mais expressivos baseados em cálculo de energia livre mínima, tanto do ponto de vista da complexidade computacional (de tempo e espaço), como da representatividade do modelo termodinâmico

Year

2002

Creators

Luiz Carlos da Silva Rozante

Três problemas em complementaridade e programação matemática

Este trabalho aborda três problemas que têm em comum modelagens envolvendo condições de complementaridade, e propostas de solução com ferramentas de programação matemática. As aplicações destes problemas incluem pesquisa operacional, regressão não-linear, redes neurais e equilíbrio de sistemas mecânicos. As técnicas de solução propostas combinam várias ferramentas de programação linear e não-linear, otimização combinatória e programação côncava. Testes numéricos estão incluídos

Year

2001

Creators

Marcelo Gomes de Queiroz

Transações Web: um estudo sobre problemas e soluções

Este trabalho estuda sobre transações de Banco de Dados em aplicações desenvolvidas para a Internet, e mais especificamente, para a Web. Os conceitos básicos do ambiente de integração Web Banco de Dados são descritos. As transações Web são caracterizadas, abordando seus principais aspectos e ressaltando os problemas transacionais que surgiram em sistemas desenvolvidos para o ambiente Web Banco de Dados, consideram-se os possíveis modelos de transações para o ambiente de integração, em substituição ao modelo convencional de transações planas, que se mostrou inadequado por não suportar transações de longa duração, nem a capacidade de desfazer parte da transação. Este estudo mostra também uma síntese das soluções existentes para resolver estes problemas e implementar transações de Banco de Dados no ambiente Web. Além de soluções mais simples como CGI, ASP e Servlets, estudou-se também os servidores de aplicação, que são softwares responsáveis pelo desenvolvimento e gerenciamento de aplicações Web mais robustas. Dentro deste contexto, os três principais modelos de componentes foram abordados: CORBA, COM+ e Enterprise JavaBeans. Além dos modelos de componentes, foi feito um estudo sobre as principais tecnologias de processamento de transações, com o intuito de mostrar que as soluções para implementação de transações Web passam por uma das tecnologias abordadas

Year

2001

Creators

Lorena Pereira da Ponte Pierre

Composição de fluxos de controle de frameworks java

Um dos principais motivos para se utilizar frameworks é a reutilização de software, alcançando com isso reutilização de código e design. Hoje, o desenvolvimento de aplicação baseado em frameworks está mudando de baseado em um único framework para baseado em múltiplos frameworks. Contudo, a maioria dos frameworks não foi projetada para ser composta com outros frameworks ou componentes (biblioteca de classes, componentes legados ou design patterns), mas para ser reutilizado individualmente. Então, quando frameworks são compostos, surgem problemas tais como: composição de fluxo de controle, composição com sistemas legados, frameworks gap, sobreposição de entidades e composição de funcionalidade de entidade [1]. Este trabalho trata dos problemas que podem acontecer durante a composição de fluxo de controle de frameworks construídos utilizando a linguagem Java. A forma de comunicação entre os frameworks está limitada à troca de mensagens. Foram definidas quatro formas de composições: sem composição, seqüencial, unidirecional e bidirecional. Para cada forma de composição foram levantados os problemas que podem acontecer durante a composição do fluxo de controle. Para cada problema foram analisadas: suas causas, conseqüências, forma de detecção e algumas sugestões. Baseado nessas informações, foi desenvolvida uma ferramenta de diagnóstico. Tal ferramenta verifica, a partir de dois frameworks e da forma de composição desejada, que tipos de problemas podem acontecer, onde eles podem acontecer e uma possível sugestão para o problema

Year

2001

Creators

Bruno Martins Moutinho

Algoritmos para caminhos mínimos

O problema do caminho mínimo consiste em: dados um grafo (V, A), uma função comprimento c de A em Z> ou = e um vértice s encontrar um caminho de comprimento mínimo de s até t, para cada vértice t em V. Desde 1959, quase todos os desenvolvimentos teóricos para esse problema têm se baseado no algoritmo de Dijkstra [11]. Foram desenvolvidas várias estruturas de dados que aumentam a eficiência desse algoritmo. Porém, qualquer implementação do mesmo examina os vértices em ordem crescente de distância a partir do vértice inicial s. Portanto, ocorre uma ordenação implícita dos vértices de acordo com essas distâncias. Assim, no modelo de comparação-adição, qualquer implementação deste algoritmo consome tempo (m + n log n), onde n é o número de vértices e m é o número de arcos do grafo dado. Para grafos simétricos e comprimentos em Z>, Thorup [39] projetou um algoritmo, no modelo RAM, que consome tempo e espaço O(m + n). O algoritmo utiliza uma decomposição hierárquica do grafo e 'bucketing' para identificar eficientemente conjuntos de vértices que podem ser examinados em qualquer ordem, evitando assim, o 'gargalo' da ordenação. Nesta dissertação são descritos e implementados vários algoritmos para o poblema do caminho mínimo, inclusive os mencionados acima. Ao final, é feita uma análise experimental das implementações realizadas

Year

2002

Creators

Shigueo Isotani

Uma taxonomia da pesquisa na área de engenharia de software

Engenharia de Requisitos é uma disciplina inserida no contexto da Engenharia de Softwre e relaciona-se ao estudo dos requisitos, sua especificação, documentação, validação e negociação entre todos os stakeholders de um sistema. Neste trabalho, propõe-se uma taxonomia da pesquisa em Engenharia de Requisitos, organizada ontologicamente, isto é, estruturada de acordo com as atividades conduzidas durante o processo de requisitos. Para isso, são discutidos os conceitos básicos da disciplina, são apresentados argumentos sobre a importância do processo de requisitos, são apontadas as principais responsabilidades no contexto de cada uma das atividades conduzidas e, por fim, são identificados os principais participantes do processo. Finalmente, são discutidas as dimensões que afetam uma possível classificação e apresenta-se um esquema facetado para classificar a pesquisa na área de Engenharia de Requisitos

Year

2002

Creators

Paulo Sérgio Naddeo Dias Lopes

Uma infra-estrutura para migração de objetos CORBA implementados em Java

Esta dissertação propõe uma infra-estrutura para migração de objetos CORBA implementados em Java. Dois objetos nortearam o projeto dessa infra-estrutura. Um deles foi possibilitar a migração de objetos individuais, isto é, a migração de somente um ou de alguns dos objetos residentes num servidor. O segundo objetivo foi prover transparência de migração, ou seja, preservar a validade das referências para os objetos que migraram e permitir que clientes continuem usando tais referências para invocar métodos dos objetos mesmo durante o processo de migração. A infra-estrutura de migração consiste num conjunto de servidores CORBA que fornecem de execução para objetos móveis. Cada um desses servidores de mobilidade funciona como hospedeiro para um conjunto de objetos CORBA implementados em Java. Estes objetos podem migrar de um servidor de mobilidade para outro. Os servidores de mobilidade são genéricos, podendo hospedar objetos com diferentes interfaces IDL, desde que implementados seguindo certas regras. Um servidor de mobilidade não precisa conhecer, em tempo de sua compilação, nem as interfaces IDL nem as classes Java correspondentes aos objetos móveis que ele abrigará. O uso de CORBA e Java foi motivado tanto por sua relevância e aceitação quanto por algumas de suas características. A transparência de localização e o mecanismo de location forward oferecidos por CORBA foram cruciais para este trabalho. A independência de plataforma, a mobilidade de código e as facilidades para a serialização de objetos oferecidas por Java foram igualmente importantes

Year

2001

Creators

Helves Humberto Domingues