34 resultados para Categorias de objetos
em Lume - Repositório Digital da Universidade Federal do Rio Grande do Sul
Resumo:
Teoria das Categorias é uma ramificação da Matemática Pura com campo científico aparentemente distinto daquele que é objeto de estudo e pesquisa para a Ciência da Computação. Entretanto, algumas características dessa teoria matemática demonstram sua utilidade na pesquisa computacional. Dentre essas características podemos citar independência de implementação, dualidade, herança de resultados, possibilidade de comparação da expressividade de formalismos, notação gráfica e, sobretudo, expressividade das construções categoriais. Sua expressividade é explicitamente destacada pelo MEC nas Diretrizes Curriculares de Cursos da Área de Computação e Informática, onde afirma-se que “Teoria das Categorias possui construções cujo poder de expressão não possui, em geral, paralelo em outras teorias”. Entretanto, Teoria das Categorias tem encontrado obstáculos para ser efetivamente aplicada na Ciência da Computação. A baixa oferta de bibliografia - predominantemente de língua inglesa - e a falta de uniformidade na exposição do que sejam os tópicos introdutórios convergem e potencializam outro grande empecilho à sua propagação: a baixa oferta de cursos com enfoque em Teoria das Categorias. A fim de transpor essas dificuldades, Fábio Victor Pfeiff desenvolveu o CaTLeT, um aplicativo de interface visual que tinha como objetivo facilitar o acesso aos conceitos introdutórios de Teoria das Categorias Com inspiração fortemente educacional, CaTLeT somente é capaz de representar objetos e morfismos atômicos, o que o limita a servir somente aos conceitos iniciais. Em 2003, o CaTLeT foi ampliado e os objetos e morfismos, antes atômicos, passaram a representar conjuntos e relações, respectivamente. Este projeto consiste em uma ampliação tanto do CaTLeT quanto dos objetivos que justificaram sua criação. Esta dissertação trata de um projeto de simulador categorial e de sua respectiva implementação as quais visam fornecer suporte computacional a fim de facilitar o acesso a conceitos intermediários de Teoria das Categorias e servir como suporte à pesquisa na área. A construção desse simulador possui três critérios de avaliação como parâmetro: boa acessibilidade, alta relevância das estruturas implementadas e alta cobertura. A nova ferramenta - denominada CaTReS - deve manter a acessibilidade a usuários leigos que sua predecessora possui e ampliar significativamente as estruturas suportadas, além de incluir tratamento à conceitos funtoriais. Dessa maneira, este projeto vem para auxiliar na superação dos obstáculos anteriormente mencionados.
Resumo:
Este trabalho busca a implementação da replicação de objetos através da linguagem Java e de seu sistema de invocação remota de métodos (Remote Method Invocation - RMI). A partir deste sistema, define-se uma classe de replicação - a máquina de replicação – onde a implementação de grupos de objetos é estruturada de acordo com a arquitetura cliente/servidor, sendo o cliente o representante (a interface) de um grupo de objetos e os servidores representam os demais componentes do grupo. A classe de replicação atende a uma necessidade importante dos sistemas distribuídos - o desenvolvimento de aplicações tolerantes a falhas. Fundamentalmente, a tolerância a falhas é obtida por redundância e, no caso de mecanismos de tolerância a falhas por software, esta redundância significa basicamente replicação de dados, processos ou objetos. A tolerância a falhas para tal tipo de sistema é importante para garantir a transparência do mesmo, visto que, assim como um sistema distribuído pode auxiliar muito o usuário pelas facilidades oferecidas, o não cumprimento de suas atividades de acordo com o esperado pode, em algumas situações, causar-lhe transtornos e erros irrecuperáveis nas aplicações. Finalmente, como principal contribuição, este trabalho descreve e implementa a solução completa para a construção de uma biblioteca de classes que oferece a replicação de forma totalmente transparente para o usuário.
Resumo:
Este trabalho apresenta o projeto de uma interface visual para modelos de bancos de dados orientados a objetos, com suporte para versões. Um requisito importante, não atendido pelas interfaces visuais específicas e genéricas para sistemas orientados a objetos, é a capacidade de definir e manipular versões de um objeto nos vários níveis da hierarquia de classes (herança por extensão, adotada pelo modelo de versões [GOL 95]). As interfaces, que manipulam versões, suportam essa característica no nível mais especializado da hierarquia (herança por refinamento, adotada pelos principais SGBDOOs). Procurando prover a possibilidade do versionamento de objetos nos vários níveis da hierarquia de classes, surgiu a motivação para projetar e desenvolver uma interface visual com funcionalidades de interfaces existentes (específicas e genéricas) e que obedeça às características principais dos Modelos de Dados Orientados a Objetos e do Modelo de Versões [GOL 95], seguindo as características recomendadas para interfaces visuais para MDOOs, propostas em [SIL 96]. Foi implementado um protótipo com algumas das características projetadas para o browser de objeto e seu suporte para versões.
Resumo:
Atualmente os sistemas computacionais mais sofisticados são aqueles que apresentam imagens gráficas. Devido às características de alta velocidade de processamento e excelente resultado na geração de imagens o uso da Computação Gráfica se dá em diversas áreas como a indústria, pesquisa, publicidade, entretenimento, medicina, treinamento, dentre outras. Este trabalho aborda dois assuntos clássicos na Computação Gráfica, Geometria Sólida Construtiva (CSG) e Sombras Projetadas. Ambos são muito importantes para esta linha de pesquisa da Ciência da Computação. A Geometria Sólida Construtiva é utilizada na modelagem de objetos e as sombras projetadas são necessárias para aumentar o realismo das imagens. Geometria sólida construtiva (CSG) é uma técnica para a modelagem de sólidos, que define sólidos complexos pela composição de sólidos simples (primitivas). Isso inclui também a composição de objetos já combinados, até que se chegue a um objeto mais complexo. Um fator muito importante e necessário na obtenção de imagens realistas e que deve ser considerado é a utilização de sombras, pois estas são eficazes no realismo e impressão espacial de objetos tridimensionais. As sombras estabelecem diversos níveis de profundidade na imagem, fazem uma pontuação geométrica na cena de modo a evitar que os objetos não pareçam estar flutuando no ar. Este trabalho consiste em apresentar uma proposta para a geração de sombras em objetos modelados pela Geometria Sólida Construtiva. Para tanto foram estudados os assuntos referentes à modelagem de objetos por CSG, algoritmos para a geração de sombras “bem delimitadas” e formas de gerar sombras na Geometria Sólida Construtiva. O processo de geração de sombras em cenas modeladas por CSG, através da aplicação das mesmas operações booleanas envolvidas na modelagem dos objetos, sobre as sombras nem sempre apresenta resultados corretos. Diante disso, foram investigadas outras formas de solucionar o problema. Dentre estas, uma alternativa é a realização de transformações na árvore binária CSG, através de outras operações, envolvendo o uso de complemento com operações de união e interseção, para a modelagem do objeto e geração da sombra correspondente. Com base nos estudos realizados foram implementados dois protótipos que exibem a sombra projetada de objetos modelados por CSG. Na implementação do protótipo A utilizaram-se as técnicas tradicionais de modelagem de sólidos e sombra projetada. Os resultados obtidos com este protótipo serviram de referência. No protótipo B os resultados foram obtidos através da aplicação da zona ativa das primitivas na modelagem dos objetos e a sombra é projetada durante o processo de avaliação de contornos do sólido. Os resultados obtidos com este protótipo são comparados com os resultados do protótipo A e são apresentados como forma de exibir a aplicação do método proposto.
Resumo:
Este estudo teve por objetivo verificar as variáveis somato-motoras dos atletas de atletismo do Estado do Rio Grande do Sul, nas categorias pré-mirim (12 e 13 anos de idade), mirim (14 e 15 anos de idade) e menor (16 e 17 anos de idade), em ambos os sexos. Os atletas da amostra (63 do sexo masculino e 48 do sexo feminino) foram divididos em 3 grupos de provas: potência de membros inferiores (PMI), potência de membros superiores (PMS) e resistência (R), seguindo como critério os resultados obtidos em competições no ano de 2001. Foram realizadas 11 medidas somáticas, incluindo estatura, envergadura, massa corporal, pregas de adiposidade subcutâneas, diâmetros e perímetros. O somatotipo foi determinado de acordo com o método de Heath-Carter. Entre os testes utilizados, estão o teste do quadrado (agilidade), salto horizontal (força explosiva de membros inferiores), corrida de 20 metros (velocidade), arremesso de medicine ball de 2 kg (força explosiva de membros superiores), teste de sentar e alcançar – “sit and reach” (mobilidade articular), sit-ups (força-resistência abdominal 60 segundos). Para descrever os resultados foi utilizado a estatística descritiva usual, com médias e desvios-padrão; para as análises inferenciais, foi utilizada a analise de variância ANOVA. O programa estatístico utilizado foi o SPSS 8.0. No sexo feminino os resultados foram muito semelhantes, sugerindo um grupo muito homogêneo entre as atletas. Os atletas do sexo masculino apresentaram diferenças estatísticas, principalmente entre as categorias pré-mirim e mirim e entre as categorias pré-mirim e menor. As diferenças entre as categorias mirim e menor foram mínimas. Recomenda-se uma atenção maior para a variável de flexibilidade que apresentou valores inferiores aos das avaliações do Projeto Esporte Brasil (PROESP-BR). As variáveis somáticas são os principais fatores para a determinação dos grupos de provas, quando os atletas ingressam na categoria pré-mirim. Na mesma categoria,houve diferenças estatisticamentesignificantes em relação às variáveis motoras entre os grupos de provas (PMI, PMS, R).
Resumo:
Independentemente do modelo de programação adotado, no projeto e implementação de aplicações de alta disponibilidade, faz-se necessário usar procedimentos de tolerância a falhas. Dentre as atividades que trazem consigo interesse de pesquisa na área de Tolerância a Falhas, estão os mecanismos de recuperação em um sistema computacional. Do ponto de vista prático, estes mecanismos buscam manter próximo do mínimo o tempo total de execução de aplicações computacionais de longa duração, ao mesmo tempo em que as preparam para não sofrerem perdas significativas de desempenho, em caso de falhas. Paralelamente à evolução dos sistemas computacionais, foi possível observar também a evolução das linguagens de programação, principalmente as que utilizam o paradigma orientado a objetos. O advento da área de tolerância a falhas na orientação a objetos resultou em novos problemas na atividade de recuperação quanto aos mecanismos de salvamento de estados e retomada da execução, principalmente no que se refere às dificuldades de gerenciamento e controle sobre a alocação de objetos. Entretanto, observa-se que a complexidade de implementação dos mecanismos de recuperação, por parte dos programadores, exige deles conhecimentos mais especializados para o salvamento dos estados da aplicação e para a retomada da execução. Portanto, a simplificação do trabalho do programador, através do uso de uma biblioteca de checkpointing que implemente os mecanismos de salvamento de estados e recuperação é o ponto focal deste trabalho. Diante do contexto exposto, nesta dissertação, são definidas e implementadas as classes de uma biblioteca que provê mecanismos de checkpointing e recuperação. Esta biblioteca, denominada de Libcjp, visa aprimorar o processo de recuperação de aplicações orientadas a objetos escritas na linguagem de programação Java. Esta linguagem foi escolhida para implementação devido à presença dos recursos de persistência e serialização. Para a concepção do trabalho, são considerados ambos os cenários no paradigma orientado a objetos: objetos centralizados e distribuídos. São utilizados os recursos da API de serialização Java e a tecnologia Java RMI para objetos distribuídos. Conclui-se o trabalho com a ilustração de casos de uso através de diversos exemplos desenvolvidos a partir de seus algoritmos originais inicialmente, e incrementados posteriormente com os mecanismos de checkpointing e recuperação. Os componentes desenvolvidos foram testados quanto ao cumprimento dos seus requisitos funcionais. Adicionalmente, foi realizada uma análise preliminar sobre a influência das ações de checkpointing nas características de desempenho das aplicações.
Resumo:
Esta dissertação descreve uma arquitetura de suporte para a criação de sistemas de automação baseados em objetos distribuídos e no barramento CAN. Consiste basicamente da utilização de orientação a objetos para modelagem dos sistemas bem como sua implementação na forma de objetos autônomos. Os objetos são então distribuídos em uma rede de placas microcontroladas, as quais são utilizadas para o controle da planta, e PC's, os quais são utilizados para supervisão e monitoração. O suporte em tempo de execução para os objetos é dado por um sistema operacional que permite a sua implementação na forma de processos concorrentes, o qual, no caso das placas microcontroladas, é um sistema operacional do tipo embarcado. A comunica ção entre os objetos é realizada através de um protocolo publisher/subscriber desenvolvido para o barramento CAN que é suportado por uma biblioteca e elementos de comunicação especí cos. Este trabalho tem como objetivo apresentar alternativas aos sistemas de automação existentes atualmente, os quais baseiamse geralmente em dispositivos mestre/escravo e em comunicações do tipo ponto a ponto. Dessa forma, a arquitetura desenvolvida, apropriada para sistemas embarcados, visa facilitar a criação e dar suporte para sistemas de automação baseados em objetos distribuídos.
Resumo:
Este trabalho apresenta o módulo Collaborative Service, uma extensão do ambiente Cave, desenvolvido para suportar conceitos de trabalho cooperativo no projeto de circuitos integrados. Esta extensão por sua vez, é baseada na metodologia Pair- Programming e nas tecnologias Jini e Javaspaces. O módulo Collaborative Service foi desenvolvido para auxiliar a continuidade do processo de desenvolvimento de circuitos integrados complexos, inserindo uma dinâmica de grupo através da extensão de Pair-Programming para máquinas remotas. Esse modelo permite que dois ou mais projetistas interajam em um mesmo projeto ou blocos de projeto, independente de suas localizações geográficas e tipos de plataformas de hardware/software. Ele foi projetado para ser genérico e essa característica o torna capaz de suportar as ferramentas de CAD, atuais e futuras, do ambiente Cave (um framework de apoio ao projeto de circuitos integrados). Como estudo de caso, foram utilizadas duas ferramentas do Ambiente Cave. O primeiro caso mostra uma cooperação em nível de descrições gráficas, representada pela ferramenta Blade, um editor de esquemáticos hierárquico. O segundo caso foi representado pelo editor de descrições textuais (VHDL, Verilog e Linguagem C), chamado Homero. No estudo de caso com a ferramenta Blade foi demonstrado que a cooperação proposta por esse modelo pode atuar sob diferentes níveis de hierarquia de projeto, além de suportar a interação de inúmeros projetistas em um mesmo bloco. Na ferramenta Homero, demonstrou-se a cooperação em nível de descrições textuais, representados por (códigos) projetos VHDL acrescidos da participação de vários projetistas. Com esses exemplos, foi possível demonstrar as estratégias de percepção e comunicação com os projetistas, além de descrever a criação de blocos de projeto de uma forma cooperativa. Como contribuição desse trabalho, acrescenta-se ao Ambiente Cave mais um recurso para o projeto de circuitos integrados. Nesse sentido, grupos de projetistas podem projetar um sistema ou circuito integrado de forma cooperativa utilizando-se das funcionalidades desse modelo.
Resumo:
Este trabalho aborda o tema da geração de sistemas supervisórios a partir de modelos orientados a objetos. A motivação para realização do trabalho surgiu com o estudo de sistemas supervisórios e de ferramentas de suporte à modelagem de sistemas usando orientação a objetos. Notou-se que nos primeiros, apesar de possuírem como principal objetivo a visualização de estados e grandezas físicas relacionadas a componentes de plantas industriais (nível de um tanque, temperatura de um gás, por exemplo), os modelos computacionais utilizados baseiam-se em estruturas de dados não hierárquicas, nas quais variáveis de contexto global e não encapsuladas, as chamadas “tags”, são associadas às grandezas físicas a serem visualizadas. Modelos orientados a objeto, por outro lado, constituem uma excelente proposta para a criação de modelos computacionais nos quais a estrutura e semântica dos elementos de modelagem é bastante próxima a de sistemas físicos reais, facilitando a construção e compreensão dos modelos. Assim sendo, a proposta desenvolvida neste trabalho busca agregar as vantagens do uso de orientação a objetos, com conceitos existentes em sistemas supervisórios, a fim de obter-se ferramentas que melhor auxiliem o desenvolvimento de aplicações complexas. Classes e suas instâncias são usadas para modelagem de componentes da planta industrial a ser analisada. Seus atributos e estados são associados às grandezas físicas a serem visualizadas. Diferentes formas de visualização são associadas às classes, aumentando assim o reuso e facilitando o desenvolvimento de sistemas supervisórios de aplicações complexas. A proposta conceitual desenvolvida foi implementada experimentalmente como uma extensão à ferramenta SIMOO-RT, tendo sido denominada de “Supervisory Designer”. A ferramenta desenvolvida estende o modelo de objetos e classes de SIMOO-RT, permitindo a adição de informações específicas para supervisão – tais como as definições de limites para os atributos. A ferramenta foi validada através do desenvolvimento de estudos de casos de aplicações industriais reais, tendo demonstrado diversas vantagens quando comparada com o uso de ferramentas para construção de sistemas supervisórios disponíveis comercialmente).
Resumo:
Este trabalho realiza um estudo sobre a criação de sistemas tempo-real usando orientação a objetos, com enfoque no mapeamento de especificações para linguagens de programação. O paradigma de orientação a objetos tem sido usado nas diferentes fases relacionadas com o desenvolvimento de sistemas tempo-real, variando desde a modelagem até o ambiente de programação e execução, mas atualmente estas iniciativas ainda focam etapas isoladas do ciclo de desenvolvimento. O objetivo deste trabalho é o de preencher esta lacuna, propondo um mapeamento entre uma metodologia ou ferramenta de análise e projeto de sistemas tempo-real orientados a objetos e uma linguagem ou ambiente de desenvolvimento baseado no paradigma de orientação a objetos que possua suporte para atender às restrições temporais especificadas. O mapeamento proposto foi desenvolvido utilizando estudos de caso clássicos em aplicações tempo-real que foram baseados em dois recentes padrões. O primeiro é o emergente padrão Real-Time UML, que visa realizar a especificação de requisitos temporais utilizando diagramas UML com extensões que os representem. O outro padrão é o Real-Time Specification for Java, que consiste de uma interface de programação (API) para desenvolvimento de aplicações tempo-real com a linguagem Java. O relacionamento entre stereotypes e tags usados para representar restrições temporais em diagramas UML e o código Java correspondente é explicado e um sumário da estratégia de mapeamento é discutido.
Resumo:
O objetivo da pesquisa atém-se primeiramente em elaborar um protocolo que permita analisar, por meio de um conjunto de indicadores, o processo de reutilização de software no desenvolvimento de sistemas de informação modelando objetos de negócios. O protocolo concebido compõe-se de um modelo analítico e de grades de análise, a serem empregadas na classificação e tabulação dos dados obtidos empiricamente. Com vistas à validação inicial do protocolo de análise, realiza-se um estudo de caso. A investigação ocorre num dos primeiros e, no momento, maior projeto de fornecimento de elementos de software reutilizáveis destinados a negócios, o IBM SANFRANCISCO, bem como no primeiro projeto desenvolvido no Brasil com base no por ele disponibilizado, o sistema Apontamento Universal de Horas (TIME SHEET System). Quanto à aplicabilidade do protocolo na prática, este se mostra abrangente e adequado à compreensão do processo. Quanto aos resultados do estudo de caso, a análise dos dados revela uma situação em que as expectativas (dos pesquisadores) de reutilização de elementos de software orientadas a negócio eram superiores ao observado. Houve, entretanto, reutilização de elementos de baixo nível, que forneceram a infra-estrutura necessária para o desenvolvimento do projeto. Os resultados contextualizados diante das expectativas de reutilização (dos desenvolvedores) são positivos, na medida em que houve benefícios metodológicos e tecnológicos decorrentes da parceria realizada. Por outro lado, constatam-se alguns aspectos restritivos para o desenvolvedor de aplicativos, em virtude de escolhas arbitrárias realizadas pelo provedor de elementos reutilizáveis.
Resumo:
Teoria das Categorias é uma ramificação da Matemática Pura relativamente recente, tendo sua base sido enunciada ao final da primeira metade do século XX. Embora seja Teoria de grande expressividade, sua aplicação efetiva tem encontrado até o momento grandes obstáculos, todos decorrência natural da brevidade de sua História. A baixa oferta de bibliografia (e predominantemente em língua inglesa) e a falta de uniformidade na exposição do que sejam os tópicos introdutórios convergem e potencializam outro grande empecilho à sua propagação - a baixa oferta de cursos com enfoque em Teoria das Categorias. Consegue, a despeito destes obstáculos, arrebanhar admiradores em inúmeros centros de reconhecida excelência técnica e científica. Dentre todas as áreas do conhecimento, atrai em especial a atenção da Ciência da Computação, por características como independência de implementação, dualidade, herança de resultados, possibilidade de comparação da expressividade de outros formalismos, forte embasamento em notação gráfica e, sobretudo, pela expressividade de suas construções [MEN2001]. No Brasil, já conta com o reconhecimento de seu papel no futuro da Ciência da Computação por parte de instituições como SBC e MEC. Os obstáculos aqui descritos, entretanto, ainda necessitam ser transpostos. O presente trabalho foi desenvolvido visando contribuir nesta tarefa. O projeto consiste em uma iniciativa aplicada em Ciência da Computação, a qual visa oportunizar o franco acesso aos conceitos categoriais introdutórios: uma aplicação de computador que faça amplo uso de representação diagramática para apresentar a proposição de conceitos básicos do grupo de pesquisa em Teoria das Categorias do Instituto de Informática da UFRGS. A proposição e implementação de uma ferramenta, embora não constitua iniciativa inédita no mundo, até onde se sabe é a segunda experiência desta natureza. Ademais, vale destacar que os conceitos tratados, assim como os objetivos visados, são atendidos de forma única e exclusiva por esta aplicação. Conjuntamente, vislumbra-se a aplicação desenvolvida desempenhando importante papel de agente catalisador na propagação da visão dos Grupos de Pesquisa em Teoria das Categorias da UFRGS e da PUC/RJ do que sejam os "conceitos categoriais introdutórios".
Resumo:
Trata-se de uma pesquisa qualitativa, utilizando Método Criativo e Sensível e, Análise de Conteúdo. Objetiva conhecer como a gestante experiencia utilizar a música no processo de ensino/aprendizado em pré-natal. Foram sete gestantes primíparas, vivenciando terceiro trimestre gestacional no pré-natal. O estudo aconteceu na Unidade Básica de Saúde e, no salão paroquial, ambos em Ponta Grossa, Estado do Paraná. Para a coleta, utilizou a dinâmica de criatividade e sensibilidade denominada dinâmica musical; Entrevista semi-estruturada e Observação. Revelaram-se seis categorias e subcategorias, sendo-as: Desvelando Saberes; Ritos e Mitos da Família; Corporeidade e seus Significados; Prazer; Percepções e Sentimentos acerca do Convívio no Grupo de Gestantes e Solfejar das Participantes. Os resultados revelaram que a música foi um recurso facilitador no processo ensino/aprendizado, favorecendo educador/enfermeiro nas atividades educativas, promovendo ambiente interativo e sonoro, propício à formação de vínculos, bem como educandos/gestantes na compreensão do processo gestacional vivido, sendo sujeitos e não objetos na prática educativa.
Resumo:
Os trabalhos da presente pesquisa nascem do deslocamento de alguns objetos do cotidiano doméstico (agulhas de costura, botões, alfinetes, zíperes e pequenos potes) para o contexto da produção em artes visuais. Desta maneira, tais objetos se colocam potencializados para novas possibilidades de apresentação. Para isso, sacrifica-se a capacidade destes utilitários de realizar a função, às vezes invertendo e outras vezes anulando-a. O resultado é um conjunto no qual se estabelece uma relação de estranhamento resultante de acumulações e repetições de elementos, que inseridos no próprio tempo do trabalho criam questões que podem contribuir com o universo da arte contemporânea. Neste contexto, criou-se uma nova relação espacial que privilegia, as melhores condições de visualidade do fruidor. Não só é evidente a importância do objeto como algo expressivo em si na medida em que cada peça que vai sendo construída no decorrer do tempo, mas também o resgate de pequenos gestos, os quais envolvidos na construção das peças determinaram estruturas que a princípio estariam soltas no espaço. Mesmo lançando mão de recursos externos de sustentação, ficou marcada a grande fragilidade das montagens. Elas acabam por serem apenas encaixadas e depositadas sobre suas bases. Decorrentes deste estudo obteve-se os seguintes trabalhos: Agulhas por Um Fio, Feixes, Desfecho, Hórtebra, Germinando e o vídeo Permanência, cujas análises deram margem para que se pudesse discutir o objeto cotidiano na arte, pelo processo de repetição, além da consciência do tempo, estranhamento e a fragilidade. Estes processos pretendem evidenciar gestos simples e o olhar dedicado às coisas do cotidiano.